什么是适当的CSS语法应用多个伪类到选择器。我想在列表中除最后一个项目之外的每个项目之后插入“,”。我使用下面的css:
ul.phone_numbers li:after { content: ","; } ul.phone_numbers li:last-child:after { content: ""; }
这在FF3,Chrome和Safari 3工作正常。IE7不工作,因为它不支持:后(如预期)。在IE 8中,在每个li包括最后一个之后使用逗号。这是IE8的问题还是我的语法不正确?它是确定,如果它不工作在IE8,但我想知道什么是正确的语法。
解决方法
:last-child是一个伪类,而:after(或者在CSS3中后面的)是一个伪元素。
引用the standard:
Pseudo-classes are allowed anywhere in selectors while pseudo-elements may only be appended after the last simple selector of the selector.
这意味着你的语法是正确的根据CSS2.1和CSS3 as well,ie IE8仍然吮吸;)