一、选择器
1、* 通配符选择器
这个选择器是匹配页面中所有的元素,一般用来清除浏览器的默认样式.
1 | *{ margin : 0 ; padding : 0 } |
2、元素选择器
通过标签名来选择元素。
1 | div{ width : 100px ; height : 100px ;} |
3、class选择器
class选择器 / 类选择器 / 用class属性给元素命名,在页面中可以出现很多次,相当于人的名字。
1 2 3 4 | .box{ width : 100px ; height : 100px ;} <div class= "box" ></div> <p class= "box" ></p> |
4、 id选择器
以id属性来命名,在页面中只能出现一次,具有唯一性,并且权重值最高,相当于一个人的身份证。
1 2 3 | #box{ width : 100px ; height : 100px ;} <div id= "box" ></div> |
二、高级选择器 一
1、E F 后代选择器
匹配到E元素下面的所有的F元素(包括子、孙),空格隔开。
1 2 3 4 5 6 7 8 | div ul li { width : 100px ; height : 100px ;}<br>//匹配到div下面的所有ul,且ul的所有后代li <div> <ul> <li></li> <li></li>
</ul> </div> |
2、 E,F 多元素选择器
同时匹配到E元素和F元素,用逗号隔开。
1 2 3 4 | div,#box{ width : 100px ; height : 100px ; background : #000 ;}//同时匹配到下文中的div标签和id为box的p标签 <div></div> <p id= "box" ></p> |
3、E>F 子元素选择器
选择到E元素的直接子代F,只选择子代。
1 | ul>li{ width : 100px ; height : 100px ;}<br><br><ul><br> <li><br> </li><br></ul> |
4、E+F(毗邻选择器) 相邻兄弟选择器
紧接在E元素后面的同级元素F,相邻兄弟选择器,有相同的父级。
1 2 3 4 5 6 7 8 | div+.box{ width : 100px ; height : 100px ; background :pink;}//这个只能选择到下面第二行的那个p元素 最后一个不满足紧接在div元素后面这个条件 <div></div>
<p class= "box" ></p>
<p class= "box" ></p>
<div></div>
<p></p>
<p class= "box" ></p> |
1 2 3 4 5 6 7 8 9 10 11 12 13 | div p + p{
width : 100px ;
height : 100px ;
margin-top : 2px ;
background :pink; } //这个可以选择到下面除了第一个p元素外其他所有的元素。 <div>
<p></p>
<p></p>
<p></p>
<p></p>
</div> |
三、高级选择器 二 属性选择器
1、 E[attr] 匹配具有attr属性的E元素
1 2 3 4 5 6 7 8 9 | div[title]{
width : 100px ;
height : 100px ;
margin-top : 2px ;
background :pink; } //匹配到下文中的第一个和第三个div元素 因为他们含有title属性
<div title= "width" ></div>
<div></div>
<div title= "height" ></div> |
2、E[attr=val]
匹配具有attr属性且值只为val的的E元素(注意 属性值要用引号引起来,我自己试了试好像不用括号也可以。)
1 2 3 4 5 6 7 8 | div[title= "height" ]{
width : 100px ;
height : 100px ;
margin-top : 2px ;
background :pink;<br>} //匹配到下文中的第三个div元素
<div title= "width" ></div>
<div></div>
<div title= "height" ></div> |
3、E[attr~=val]
匹配属性值为attr,并包含这个值的E元素,用于选取属性值中包含指定词汇的元素。
1 2 3 4 5 6 7 8 9 10 | div[class~= "c1" ]{
width : 100px ;
height : 100px ;
margin-top : 2px ;
background :pink; } //选择到下方第一个和第二个div元素 <div class= "c1" ></div>
<div class= "c1 c2" ></div>
<div class= "c2c1" ></div> |
4、E[attr|=val]
匹配所有属性为attr,值为val或者以 var- 开头的E元素
1 2 3 4 5 6 7 8 9 10 | div[class|= "c1" ]{
width : 100px ;
height : 100px ;
margin-top : 2px ;
background :pink; }//选择到下面当中的第一个和第三个元素 <div class= "c1" ></div>
<div class= "c1cs" ></div>
<div class= "c1-c2" ></div> |
5、E[attr][attr2=val]匹配所有 有attr1属性 且有attr2属性,且attr2的值为val的E元素,这个就是写出几个属性选择器,并且都要同时满足他们的条件。
1 2 3 4 5 6 7 8 9 | div[title= "width" ][class]{
width : 100px ;
height : 100px ;
margin-top : 2px ;
background :pink; } //选择到下面的第一个div元素
<div title= "width" class= "box" ></div>
<div title= "width" ></div> |
四、a伪类选择器
1 2 3 4 5 6 7 8 | 1 、 :link 匹配所有未被点击的链接 a:link{ color : green ; } 2 、:hover 匹配鼠标悬停在其上的元素 a:hover{ color : gold; } 3 、:active 匹配鼠标按下还没有释放的元素 a:active{ color : blue ; } 4 、:visited 匹配所有已经被点击的链接 a:visited{ color : red ; } |
hover的使用,只是一个选择器,一定是他的后代。
1 2 3 4 5 6 7 8 9 10 11 12 | .box{
width : 100px ;
height : 100px ;
color : #fff ;
background : #000 ; }<br>.box:hover p{ color : red ; }//鼠标移动div上,p字体的颜色改变 <div class= "box" >
<p>我的字体</p>
</div> |
2. a伪元素选择器
1> :before 在元素
1 2 3 4 | div:before{
content : "before插入的元素" ; } //在div所有元素的最前面插入这个 |
<div>
<p>这个是p</p>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</div>
2> :after 在元素后面插入内容,插到最后一个子元素的后面。
1 2 3 | div:after{ content : "" ;} 知识推荐
我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8
不良信息举报平台
互联网安全管理备案
Copyright 2023 www.wodecom.cn All Rights Reserved |