此问题与CSS伪类有关。我指的是:例如,last-child,我想它也会发生在所有其他伪类中。
<body>
<p>Paragraph1</p>
<p>Paragraph2</p>
</body>
body:last-child{
color:red;
}
<body>
<p>Paragraph1</p>
<p>Paragraph2</p>
</body>
没有空格,两个段落都会标记为红色
body: last-child{
color:red;
}
<body>
<p>Paragraph1</p>
<p>Paragraph2</p>
</body>
问题:任何人都可以帮我理解为什么会这样吗?也许有什么东西可以阅读更多关于空间行为和没有伪类空间的内容吗?
答案 0 :(得分:2)
这是最后一段而不是最后一段。
所以,就这样做:
body p:last-child{
color: red;
}
Space将css选择器的下一级元素分开工作。
答案 1 :(得分:0)
使用body:last-child
,您定位最后一个正文(并且只有一个)。所以身体内的一切都会变成红色。
body: last-child
无效,因为它无效。
您要找的是body p:last-child
。
答案 2 :(得分:0)
<强> 1。没有间距
body:last-child {
color: red;
}
<body>
<p>Paragraph1</p>
<p>Paragraph2</p>
</body>
在上面的代码中,所有p
元素都是红色的,因为color: red
应用于正文并且也应用于子元素。 body:last-child
,这里:last-child
与父母一起是w.r.t,并不代表身体元素的最后一个孩子。
<强> 2。间距
body: last-child{
color:red;
}
以上是无效的语法,不适用样式。您可以验证您的CSS:W3C CSS Validator
第3。溶液强>
body p:last-child { /* Select the paragraph which is last inside body */
color: red;
}
避免在SO片段中使用它,因为子选择器很难设计。 <link>
和<script>
被添加/附加到标记并中断子选择器。
答案 3 :(得分:0)
伪元素应始终在元素和冒号之间没有空格.eg
身体p:最后一个孩子{颜色:红色; }