nth-child

2020-03-10 04:17:59 +08:00
 BUappend
<style> .box1{ height: 500px; width: 500px; background-color: antiquewhite; display: flex; } .box1-1{ height: 100%; flex:3; } .box1-2{ height: 100%; flex:3; } .box1-3{ height: 100%; flex:4; } .box1 :nth-child(1){ background-color: blueviolet; } .box1 :nth-child(2){ width: 50px; height: 50px; } </style>
<div class="box1">
    <div class="box1-1">
        <div></div>
        <div class="box4" style="background-color: brown;"></div>
    </div>
    <div class="box1-2"></div>
    <div class="box1-3"></div>
</div>


这样写,为什么 box4 会变成 width:50px  height:50px????
1877 次点击
所在节点    CSS
8 条回复
Perry
2020-03-10 05:32:48 +08:00
.box1:nth-child(2) 和 .box1 :nth-child(2) 意义不同,后者是 .box1 的每个 child X 的 X:nth-child(2)
FragmentLs
2020-03-10 07:30:15 +08:00
~~~~
div p {
color: red;
}
~~~~

~~~~
<div>
<p>One</p>

<ul>
<li>
<p>Two</p>
<p>Two</p>
</li>
</ul>

<div>
<p>Three</p>
</div>

</div>
~~~~

同理
Sivan
2020-03-10 10:08:44 +08:00
`.box1 :nth-child(2)` => `.box1 > div:nth-child(2)`
BUappend
2020-03-10 14:17:46 +08:00
@Perry 谢谢 是不是 nth-child 只是用来选择有相同的 class 的元素比较好用啊?直接就 .clsss:nth-child(X) 了,但是如果选择某个父元素下第几个子元素是不是就不太行了呢
BUappend
2020-03-10 14:27:16 +08:00
@Perry 对 可以这样 .class>div:nth-child(X) 选择某个 class 下的第 X 个 div
BUappend
2020-03-10 14:28:01 +08:00
@Sivan 谢谢
BUappend
2020-03-10 14:44:09 +08:00
@Sivan 应该是 box1 :nth-child(2) => box1 div:nth-child(2)
BUappend
2020-03-10 14:44:31 +08:00
@FragmentLs 谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/651384

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX