感谢阅读!今天与nth-child选择器有一些问题...... 这是HTML代码,后面是CSS ...
以下基本上只是一个< ul> < li>多数民众赞成重复3倍我试图删除第三元素的右边距但不知何故我的代码不起作用。感谢任何建议!
<div id="RightContent">
<h4>Jewelry</h4>
<ul class="grid cs-style-1">
<a href="#ProductDetail">
<li>
<figure>
<img src="images/ring.jpg" alt="img01">
<figcaption>
<h3>Atlas® closed narrow ring in 18k rose gold with a diamond.</h3>
<span class="price">800</span>
<a href="#Cart"><span class="add">Add to Shopping Bag</span>
</figcaption>
</figure>
</li>
</a>
<a href="#ProductDetail">
<li>
<figure>
<img src="images/ring.jpg" alt="img01">
<figcaption>
<h3>Atlas® closed narrow ring in 18k rose gold with a diamond.</h3>
<span class="price">800</span>
<a href="#Cart"><span class="add">Add to Shopping Bag</span>
</figcaption>
</figure>
</li>
</a>
<a href="#ProductDetail">
<li>
<figure>
<img src="images/ring.jpg" alt="img01">
<figcaption>
<h3>Atlas® closed narrow ring in 18k rose gold with a diamond.</h3>
<span class="price">800</span>
<a href="#Cart"><span class="add">Add to Shopping Bag</span>
</figcaption>
</figure>
</li>
</a>
所以我有一段像上面那样的代码,我的css就像
.grid {
padding: 0px 0px 0px 0px;
max-width: 890px;
margin: 0 auto;
list-style: none;
text-align: left;
}
.grid li {
display: inline-block;
width: 278px;
margin: 0px;
margin-right: 10px;
margin-bottom: 10px;
padding: 0px;
text-align: left;
position: relative;
}
.grid li:nth-child(3n+3) {
margin-right: 0px;
}
nth-child伪选择器似乎不起作用。我的第3个&lt; li>项目仍有保证金。如果有人能指出我到底出了什么问题,我将不胜感激?
非常感谢
答案 0 :(得分:2)
答案 1 :(得分:1)
您的选择器无效,因为每个<li>
都在<a>
标记中,这意味着每个<li>
都是其父级的第一个孩子。
首先,您的标记无效。超链接应该在<li>
元素内,而不是在它们之外; only <li>
can be a direct child of <ul>
.
更正后,您可以使用选择器.grid li:nth-child(3n+3)
选择每个列表中的第三项。
答案 2 :(得分:0)
您li tag
内有a tag
,但您要将nth-child
分配给 li ,这是不正确的。你应该这样做:
.grid a:nth-child(3n+3) li{margin-right: 0px;}