用Javascript修改内部标记的CSS规则
Modify CSS rule of inner tag with Javascript
我有这样的东西:
-HTML-
<table>
<tr class="x" onMouseOver="light(this)">
<td>
<a href="x">Link</a>
</td>
<td>
Text
</td>
</tr>
</table>
-CSS-
.x a{
color: black;
}
-Javascript-
function light(x){
x.style.color="red";
}
现在,函数工作正常,但我的a标签不会改变他的颜色。有没有办法让Javascript修改CSS规则.xa的属性颜色?
这可能更合适:
.x:hover {color:red}
.x:hover a{color:red}
当行悬停在上面时,这将覆盖链接的颜色,从而使onMouseOver
功能变得不必要。
请注意,它可能在IE6中失败,但就我个人而言,在该浏览器中制作链接:hover
以外的东西从来没有遇到过任何问题。。。
这应该可以完成
x.children[0].children[0].style.color="red";
您可以在CSS中为链接too 定义:hover
样式
a:hover {
color: red;
}
当你把鼠标悬停在链接上时,它会改变链接的颜色。
.x:hover a { }
将鼠标悬停在.x
上时将对链接应用样式
实时演示
这将把所有子链接更改为红色。
function light(x){
var elems = x.getElementsByTagName("a");
for(var i=0; i < elems.length;i++){
elems[i].style.color="red";
}
}
尽管我强烈建议像其他人提到的那样使用:hover
psuedo类。
-HTML-用in <table>
标记包装tr,并将onmouseover
事件属性转换为小写。
<table>
<tr class="x" onmouseover="light(this)">
<td>
<a href="x">Link</a>
</td>
<td>
Text
</td>
</tr>
</table>
-Javascript-将select的Javascript函数体更改为a
标签
function light(x){
x.getElementsByTagName("a")[0].style.color="red";
}
相关文章:
- 用Javascript修改内部标记的CSS规则
- 如何禁用和启用css规则
- 使用javascript或jquery覆盖css规则
- 新的javascript HTML元素不遵循css规则
- 仅将 CSS 规则应用于
中的第一个 ,而不分配类/ID - 正则表达式用于删除 js 中的 css 规则
- 通过jQuery或Javascript应用于父窗口的外部css规则
- 在javascript问题中应用复合css规则
- 使用JS添加CSS规则
- 循环使用CSS规则遍历数组,并将它们应用于元素
- 可以't覆盖CSS规则
- 选择所有具有特定css规则但没有jQuery的节点
- HTML按钮即使在聚焦时也不会点击,CSS规则也会生效
- 如何更改外部样式表的css规则
- CSS 规则在执行 JavaScript 时不会应用任何效果
- 我的 CSS 规则在我的 jQuery 函数执行后加载
- 如果文件名取自用户,则不应用 CSS 规则
- 使用 httpscript 使用 css 规则
- 如何将 css 规则应用于 Javascript 表达式
- 在 IE6 中运行时添加 CSS 规则 - 对象不支持此属性或方法