我有如下结构:
<div class="navigation_sub_item_background" id="sub_nav_2">
<div class="navigation_sub_item" id="2_1">
<a class="navigation__sub__link" href="?p=2_1">
<span>
Test 3
</span>
</a>
</div>
<div class="navigation_sub_item" id="2_2">
<a class="navigation__sub__link" href="?p=2_2">
<span>
Test 4
</span>
</a>
</div>
<div class="navigation_sub_item" id="2_3">
<a class="navigation__sub__link" href="?p=2_3">
<span>
Test 5
</span>
</a>
</div>
<div class="navigation_sub_item" id="2_4">
<a class="navigation__sub__link" href="?p=2_4">
<span>
Test 6
</span>
</a>
</div>
</div>
我想只选择第一个链接和最后一个链接。我尝试div.navigation_sub_item > a.navigation__sub__link:first-of-type
,但这会选择所有链接。
有人提出建议吗?
答案 0 :(得分:4)
由于您的链接包含在div
元素中,因此您需要选择第一个和最后一个div
并定位其中的第一个或最后一个a
元素:
.navigation_sub_item:first-child a:first-of-type {
/* The very first link. */
}
.navigation_sub_item:last-child a:last-of-type {
/* The very last link. */
}
请注意,我已在first-of-type
元素本身上指定了last-of-type
和a
,以防a
中存在多个div
元素元素。如果您不关心在其之前或之后出现的其他元素,您可能希望将这些替换为first-child
和last-child
。
我想要他们所有,这很酷。但是如果只有一个
.navigation__sub__link-element
我该怎么办?然后应用:last-child规则,但我想要使用另一条规则。
在这种情况下,您可以通过指定 {/ 1>} first-child
和last-child
来覆盖这些选择器的特异性:
.navigation_sub_item:first-child:last-child a {
/* This will override the above selectors. */
}
或者,如果您未在:first-of-type
元素上指定:last-of-type
或a
,则可以同样使用:only-child
选择器:
.navigation_sub_item:only-child a {
/* This will also override the above selectors. */
}
答案 1 :(得分:2)
这应该有用。
.navigation_sub_item:first-child .navigation__sub__link {}
.navigation_sub_item:last-child .navigation__sub__link {}
答案 2 :(得分:2)
尝试这个演示示例,这里用于第一个孩子,最后一个孩子
.navigation_sub_item:first-child .navigation__sub__link,
.navigation_sub_item:last-child .navigation__sub__link{
// here style
}
.navigation_sub_item:first-child .navigation__sub__link{
color:red;
}
.navigation_sub_item:last-child .navigation__sub__link{
color:green;
}
<div class="navigation_sub_item_background" id="sub_nav_2">
<div class="navigation_sub_item" id="2_1">
<a class="navigation__sub__link" href="?p=2_1">
<span>
Test 3
</span>
</a>
</div>
<div class="navigation_sub_item" id="2_2">
<a class="navigation__sub__link" href="?p=2_2">
<span>
Test 4
</span>
</a>
</div>
<div class="navigation_sub_item" id="2_3">
<a class="navigation__sub__link" href="?p=2_3">
<span>
Test 5
</span>
</a>
</div>
<div class="navigation_sub_item" id="2_4">
<a class="navigation__sub__link" href="?p=2_4">
<span>
Test 6
</span>
</a>
</div>
</div>
答案 3 :(得分:2)
您可以按以下方式选择第一个和最后一个孩子
.navigation_sub_item:first-child .navigation__sub__link,
.navigation_sub_item:last-child .navigation__sub__link {
/*CSS rules*/
}
您可以阅读有关CSS3 first-child
和last-child
选择器的更多信息
点击链接。
答案 4 :(得分:2)
您应该使用:first-child
和:last-child
.navigation_sub_item:first-child a,
.navigation_sub_item:last-child a {
color: red;
}
答案 5 :(得分:0)
试试这个:
.navigation_sub_item:first-child .navigation__sub__link
和
.navigation_sub_item:last-child .navigation__sub__link
来涵盖您的评论,请考虑以下事项:
.navigation_sub_item:first-child .navigation__sub__link{
font-weight: bold
}
.navigation_sub_item:last-child .navigation__sub__link{
color: blue
}
<div class="navigation_sub_item_background" id="sub_nav_2">
<div class="navigation_sub_item" id="2_4">
<a class="navigation__sub__link" href="?p=2_4">Test 6</a>
</div>
</div>
答案 6 :(得分:0)
我认为最好的方法对我有用
.div-selecter a:last-of-type { color:red;}