IE似乎并不关心文本装饰:无;为a:之前的伪元素(或伪类)定义.
这是一个JS小提琴:http://jsfiddle.net/9N35f/
我期待“>”失去下划线.它适用于FF,Chrome和Safari,但不适用于IE.用IE10和IE9测试.
问题是:
我可以尝试使用的任何变通方法:在元素丢失下划线之前?理想情况下在IE9中
这个地方有错误报告吗?或者它是否符合标准?
解决方法
IE似乎在这里出错,因为你的代码中的display:block应该删除下划线.根据CSS 2.1规范中的第16.3
Decoration节,“用户代理不得在非文本内容上呈现这些文本装饰.例如,图像和内联块不得加下划线.“
在IE Feedback Home,似乎没有关于此报告的错误.
a:before { content: url(arrow.png); }
其中arrow.png指的是一个合适的小图标.在内容中使用url(…)在CSS3 Generated and Replaced Content Module中描述,这是一个严重过时的草案(最后一个版本是从2003年开始),但是这部分已经在浏览器中广泛实现.但是,不是在IE 7中.因此,如果您希望覆盖IE 7,请考虑@ EugeneXA的答案中的方法,可能使用JavaScript动态生成额外的标记.