是否可以使用CSS3选择器:first-of-type选择具有给定类名的第一个元素?我的测试不成功,所以我想这不是?
守则(http://jsfiddle.net/YWY4L/):)
p: first-of-type{颜色:蓝色}
p.myclass1: first-of-type{颜色:红}
.myclass2: first-of-type{颜色:绿色}
< div >
<div>此文本应该正常显示</div>
<p>这个文本应该是蓝色的
<p class="myclass1">这段文字应该是红色的
<p class="myclass2">这段文字应该是绿色的
< / div >
这是不可能使用CSS3选择器:first-of-type选择具有给定类名的第一个元素。
但是,如果目标元素有一个先前的兄弟元素,你可以结合否定CSS伪类和相邻的兄弟元素选择器来匹配一个没有立即具有相同类名的前一个元素的元素:
:not(.myclass1) + .myclass1
完整的工作代码示例:
p: first-of-type{颜色:蓝色}
P:not(.myclass1) + .myclass1{颜色:红色}
P:not(.myclass2) + .myclass2{颜色:绿色}
< div >
<div>此文本应该正常显示</div>
<p>这个文本应该是蓝色的
<p class="myclass1">这段文字应该是红色的
<p class="myclass2">这段文字应该是绿色的
< / div >