【问题标题】:How do I prevent my anchor tag from line-through?如何防止我的锚标签直通?
【发布时间】:2012-06-17 01:24:59
【问题描述】:

我有我的跨度标签:

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

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

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

【问题讨论】:

    标签: html


    【解决方案1】:

    [来自CSS text-decoration property cannot be overridden by child element]

    text-decoration specs 状态:

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

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


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

    <span>
       <span class="strikethrough">Hello </span>
       <a href="#">World!</a>
    </span>​
    
    .strikethrough {
       text-decoration: line-through;
    }
    

    嵌套 span 元素是有效的。 Are nested span tags OK in XHTML?


    不起作用

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

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

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

    【讨论】:

    • @ascii-lime:确实如此,因此是 CSS 注释。
    • @dunsmoreb:哦,哇。它没有。显然,除了删除线之外,还应用了下划线 。我正在寻找其他方法。
    • @xbonez:抱歉不可接受。你已经有效地完成了我在我的 Note 中没有提到的相同的事情。
    • @TimTom:很公平。希望有人能提出更好的方法来实现这一目标。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-13
    相关资源
    最近更新 更多