您需要提供:after伪元素position:absolute;并通过它margin来移动它。display:inline-block;为了使:after内容正确显示,还需要锚点。
请参阅: http: //jsfiddle.net/ECFBR/
处理此问题的最简单方法是span在每个链接中包装文本:
<a href="#"><span>test</span></a>
Run Code Online (Sandbox Code Playgroud)
在:hover只span给出text-decoration: underline:
a:hover span {text-decoration: underline}
Run Code Online (Sandbox Code Playgroud)
请参阅: http ://jsfiddle.net/thirtydot/3N9vs/27/
一个类似的旧问题:无法撤消子元素的文本修饰
也相关:子元素不能覆盖CSS文本修饰属性