【发布时间】:2011-05-27 17:58:50
【问题描述】:
可能重复:
How do I get this CSS text-decoration override to work?
看看这个简单的例子:
<a href="#"> A <span>red</span> anchor </a>
a {
color:blue;
font-family:Times New Roman;
text-decoration:underline;
}
span {
color:red;
font-family:Arial;
text-decoration:none;
}
现场演示: http://jsfiddle.net/5t9sV/
正如您在 JSfiddle 的演示中所见,SPAN 元素覆盖了其祖先 ANCHOR 元素的 color 和 font-family 属性值。但是,text-decoration 属性由于某种原因不会被覆盖。
我假设某些 CSS 属性可以被祖先元素覆盖,而其他一些 CSS 属性则不能。
是这样吗? 如果是,我怎么知道哪些可以被覆盖,哪些不能被覆盖?
【问题讨论】:
-
如果您在切换跨度类的下划线时仔细观察,您会看到下划线发生了变化。只是Anchor标签下划线没有停。
-
@Stefan 为什么不给出答案 - 这就是解决方案:父元素是被下划线的元素。必须终止父元素才能停止下划线。我认为没有“强制无下划线”样式
-
@Stefan 我不明白你的意思。
-
@Šime 这是一个使用
overline的插图,这可能会使jsfiddle.net/5t9sV/4 更清晰 -
@Pekka 啊哈我明白了。下划线“属于” ANCHOR 元素,因此 SPAN 元素无法操纵该下划线(因为它不是他的)
标签: css