Correcting teacher:PHPz
Correction status:qualified
Teacher's comments:清晰明了,继续加油,很好
ele.style
,当前元素<style>
,当前文档xxx.css
,引用它的文档优先级:
行内样式 > 文档样式 > 外部样式。
important 最高优先级
根据元素的基本特征,定位元素
元素 = 标签 + 属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<h1>hello world</h1>
<h1 class="site">php中文网</h1>
<h1 class="active">晚上好</h1>
<style>
/* 标签选择器 */
h1 {
color: red;
}
/* 属性选择器 */
h1[class="site"] {
color: green;
}
h1[id="active"] {
color: red;
}
</style>
</body>
</html>
通过元素的位置与层级来匹配。
上下文选择器,一定要有一个查询入口,否则会递归查询
>
(仅限父子)
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<ul class="list">
<li class="item">item1</li>
<li class="item">item2</li>
<li class="item">item3</li>
<ul>
<li class="item">item-1</li>
<li class="item">item-2</li>
<li class="item">item-3</li>
<li class="item">item-4</li>
<li class="item">item-5</li>
</ul>
<li class="item">item4</li>
<li class="item">item5</li>
<li class="item">item6</li>
<li class="item">item7</li>
</ul>
<style>
.list > .item {
border: solid 1px red;
}
</style>
</body>
</html>
空格
(后级所有元素,包括子集,孙子,重孙……)接父子选择器例子,简单修改,去掉 > 符号,所有具有相同class名称的样式都将改变。
.list .item {
border: solid 1px red;
}
+
(相邻的下一个元素,紧跟的且只有一个)例子:有三个div元素,使用兄弟元素选择器,快速改变中间div的样式。
代码演示
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<div class="wrap">
<div class="demo one">
<p>我是第1个元素</p>
</div>
<div class="demo">
<p>我是第2个元素</p>
</div>
<div class="demo">
<p>我是第3个元素</p>
</div>
</div>
<style>
.wrap > .demo {
display: inline-block;
width: 100px;
height: 200px;
border: solid red 1px;
}
/* 通过兄弟选择器改变中间div样式 */
.wrap > .demo.one + * {
width: 300px;
color: green;
}
</style>
</body>
</html>
运行效果
~
(与当前元素同级的后面的全部元素)使用兄弟选择器例子代码,将 + 换成 ~,改变排除第一个元素后的,所有同级元素样式。
代码演示
.wrap > .demo.one ~ * {
width: 300px;
color: green;
}