什么是样式冲突? ——— 元素的同一个样式名,被设置了不同的值,这就是冲突
示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>层叠性</title>
<style>
#container p {
color: cadetblue;
}
div p {
color: brown;
font-size: 20px;
}
</style>
</head>
<body>
<div id="container">
<p>
Lorem ipsum dolor sit amet.
</p>
</div>
</body>
</html>
-
继承性
- 概念:元素会自动拥有其父元素、或其祖先元素上所设置的某些样式
- 规则:优先继承离的近的
- 常见的可继承属性:
text-??, font-??, line-??, color …
-
备注:参照MDN网站,可查询属性是否可被继承
示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>继承性</title>
<style>
div {
color: red;
}
</style>
</head>
<body>
<div id="container">
Lorem ipsum dolor sit amet consectetur adipisicing elit. A, voluptate?
<p>
Lorem ipsum dolor sit amet.
<span>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Quidem, natus! Officiis non iusto impedit quaerat, voluptatibus totam maxime recusandae ducimus, accusantium possimus quos ab? Qui, cumque placeat? Natus, ut officiis.
</span>
</p>
</div>
</body>
</html>
计算权重时需要注意:并集选择器的每一个部分是分开算的
示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>优先级</title>
<style>
/* ID选择器 */
#container1 {
color: slateblue;
}
/* 类选择器 */
.container p {
color: darkgray;
}
/* 元素选择器 */
span {
color: green;
}
/* 通配选择器 */
* {
color: blue;
}
/* 继承的样式*/
body {
color: red;
font-size: 30px;
}
</style>
</head>
<body>
<div id="container1" class="container">
Lorem ipsum dolor sit amet.
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Laborum, perspiciatis.
<span>
<br>
<br>
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Labore possimus facilis, voluptates magni repellat unde.
</span>
</p>
</div>
</body>
</html>