【发布时间】:2018-04-21 06:57:06
【问题描述】:
我正在学习 CSS,并且对 * 选择器有疑问。我知道它会将其样式应用于文档中的每个元素。
但是,当我为正文和段落定义不同的样式(背景颜色)时,* 选择器中的样式仅应用于正文而不应用于段落。见https://jsfiddle.net/oz8a1rn4/1/
* {
background-color: grey;
}
body {
background-color: blue;
}
p {
background-color: red;
}
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Vero soluta enim aut! Nihil nam obcaecati, fugiat sint sit libero voluptate eos incidunt odio neque cum, dignissimos aperiam, magnam nisi debitis.</p>
【问题讨论】:
-
这是由于
Cascading-Style-Sheet。短CSS。在您的情况下,以下规则会覆盖之前的规则。此外,cascade中的Inline-CSS比stylesheet中的更高。 -
确实如此。 * 选择器选择所有元素。 * 选择器还可以选择另一个元素内的所有元素。
-
感谢您的 cmets。实际上,我想了解的是为什么 * 选择器会覆盖我正文的样式,而不是我的段落。
-
正文是蓝色的,只是你的段落占据了整个正文,所以你看不到它。不相信我?尝试在段落后添加 div,或将段落的不透明度设置为零。