3

我有我的跨度标签:

<span style="text-decoration:line-through" > Hello World <a href="http://www.yahoo.com">Yahoo</a> </span>

如您所见,我已在跨度上应用了直通。但这也会导致锚标签上的直通。如何防止锚标记上的直通。我不想攻击我的锚标签。

注意:请不要让我将我的锚标签移到跨度标签之外!如果我能做到这一点,我就不会问这个问题了。

4

1 回答 1

2

[来自 CSS text-decoration 属性不能被子元素覆盖]

文本装饰规范状态:

后代元素上的 'text-decoration' 属性不能对祖先元素的装饰产生任何影响。

text-decoration-skip ,如链接问题中所述,最新版本的 Chrome 和Firefox都不支持


我不知道你是否可以接受,但由于下面的解决方案不起作用,这可能是你唯一的方法:

<span>
   <span class="strikethrough">Hello </span>
   <a href="#">World!</a>
</span>​

.strikethrough {
   text-decoration: line-through;
}

嵌套 span 元素是有效的。 嵌套跨度标签在 XHTML 中可以吗?


不起作用

默认情况下,该属性将由子级继承。如果您不想这样做,请覆盖它。

span > a {
   text-decoration: none;
   /* or perhaps 
   text-decoration: underline;
   */
}

这将确保作为 span 元素的直接后代出现的所有锚元素不会有删除线。

于 2012-06-14T02:26:13.037 回答