发布网友 发布时间:2024-09-06 13:47
共1个回答
热心网友 时间:2024-09-09 22:58
css样式有哪几种选择器?CSS选择器、优先级与匹配原理\x0d\x0a1.id选择器(#myid)2.类选择器(.myclassname)3.标签选择器(div,h1,p)4.相邻选择器(h1+p)5.子选择器(ul通配选择符的权值0,0,0,0\x0d\x0a2.标签的权值为0,0,0,1\x0d\x0a3.类的权值为0,0,1,0\x0d\x0a4.属性选择的权值为0,0,1,0\x0d\x0a5.伪类选择的权值为0,0,1,0\x0d\x0a6.伪对象选择的权值为0,0,0,1\x0d\x0a7.ID的权值为0,1,0,0\x0d\x0a8.important的权值为最高1,0,0,0\x0d\x0a使用规则:选择器的权值加到一起,大的优先;如果权值相同,后定义的优先。\x0d\x0a从上面我们可以得出两个关键的因素:\x0d\x0a1.权值的大小跟选择器的类型和数量有关\x0d\x0a2.样式的优先级跟样式的定义顺序有关
css有哪些选择器CSS中常用的选择器:
(一)基本选择器(二)层次选择器(三)动态伪类选择器(四)目标伪类选择器
(五)ui状态伪类选择器(六)结构伪类选择器(七)属性选择器(八)伪元素
(一)基本选择器
1.标签选择器:通过标签名获取元素权重:0001
(此种选择器影响范围大,建议尽量应用在层级选择器中。)
2.class选择器:通过.类名获取元素权重:0010
(通过class类名来选择元素,一个类可应用于多个元素,一个元素上也可以使用多个类,应用灵活,可复用,是css中应用最多的一种选择器。)
3.id选择器:通过#id名获取元素权重:0100
(通过id名来选择元素,元素的id名称不能重复,所以一个样式设置项只能对应于页面上一个元素,不能复用,id名一般给程序使用,所以不推荐使用id作为选择器。)
4.*通配符选择器:获取到页面的所有元素
5.群组选择器:用逗号隔开基本选择器,表示这些选择器都获取到
(二)层次/关系选择器
(主要应用在选择父元素下的子元素,或者子元素下面的子元素,可与标签元素结合使用,减少命名,同时也可以通过层级,防止命名冲突。)
1.包含选择器:用空格隔开基本选择器,表示后一个选择器是前面的后代
例:pa{color:red;}
2.子代选择器:用隔开基本选择器,表示后一个选择器是前面的子代
例:ulli{line-style:none;}
3.相邻兄弟选择器:E+F:表示获取到E后面的紧跟着的F元素(同级的)
例:a+a{}
4.兄弟选择器:E~F:表示获取到E后面所有的同级的F元素
例:li~li{}
(三)动态伪类选择器
1.a:link锚链接被访问前添加样式
2.a:visited锚链接被访问后添加样式
3.e:hover鼠标悬停在元素上添加样式
4.e:active鼠标点击元素时添加样式
5.:focus表单元素被聚焦时,添加样式
(四)目标伪类选择器
语法:目标:target{属性:属性值}被选中的目标添加样式
目标:targetE子元素{属性:属性值}被选中的目标里的E子元素添加样式
(五)ui状态伪类选择器
1.:enabled可用的表单元素添加样式
2.:disabled不可用的表单元素添加样式(disabled)
3.:checked+E被选中的表单元素添加样式
(六)结构伪类选择器
1.E:first-child获取到E元素,且要满足为其父元素的第一个孩子。
2.E:last-child获取到E元素,且要满足为其父元素的最后一个孩子
3.E:nth-child(n)获取到E元素,且要满足为其父元素的第n个孩子
n的用法:
(1)6n倍数(2)even偶数/2nodd奇数/2n-1(如可用来选中奇偶行来实现“隔行换色”)
(3)-n+5选中1-5
(4)p:nth-child(-n+3):nth-child(n+2)2-3个
4.E:nth-last-child(n)获取到E元素,且要满足为其父元素的倒数第n个孩子
5.E:first-of-type获取到E元素,且要满足为其父元素的第一个该类型的孩子
6.E:last-of-type获取到E元素,且要满足为其父元素的最后一个该类型的孩子
7.E:nth-of-type(n)获取到E元素,且要满足为其父元素的第n个该类型的孩子
8.E:nth-last-of-type(n)获取到E元素,且要满足为其父元素的倒数第n个该类型的孩子
9.E:empty获取到空的E元素(注:连空格都不能有)
(七)属性选择器
1.E[attr]拥0有attr属性的E元素添加样式如div[class];
2.E[attr="val"]拥有attr属性值为val的E元素添加样式如p[class="ab"]
3.E[attr*="val"]attr属性值包含val的E元素添加样式
如ul[class="c"]指class类名中包含有c字母的E元素
4.E[attr^="val"]attr属性值以val开头的E元素添加样式
5.E[attr$="val"]attr属性值以val结尾的E元素添加样式
(八)伪元素
1.E::before给E元素添加第一个子元素(前面)
2.E::after给E元素添加最后一个子元素(后面)
3.E::first-letter给E元素第一个字添加样式
4.E::first-line给E元素第一行添加样式
5.E::selection元素内容被选中时添加样式(火狐需要加前缀-moz-)
css3的基本选择器有哪几种?
1、标签选择器,也称为元素选择器。
标签选择器的基本形式如下:tagName{property:value},其中tagName是标签名称,property是css的属性。
2、类选择器。
类选择器用来为一系列标签定义相同的呈现方式,常用的语法是.classValue{property:value}。其中classValue是类选择器的名称,这是由css编写者自己命名。(所有浏览器都支持类选择器,但多类选择器(.className1.className2)不被ie6支持。)
3、ID选择器。
ID选择器定义的是某一个特定的html元素,一个网页中只有一个标签或元素使用某一ID的属性值。ID选择器的基本语法格式如下:#idValue{property:value}。其中idValue是ID选择器的名称,可以由CSS编写者自己编写。(所有浏览器都支持)
4、全局选择器。
全局选择器就是对所有的htmlz元素起作用。语法格式为:*{propery:value}。其中“*”表示对所有元素起作用,property表示css的属性,value表示属性值。
5、复合选择器。
将多种选择器进行搭配,可以构成一种复合选择器,也称为组合选择器。
6、继承选择器。
继承的规则是子标签在没有定义的情况下,继承父标签的选择器;当子标签重复定义了父标签的声明时,执行子标签选择器。
7、伪类选择器。
伪类选择器主要应用在标签上,它由四种状态:未访问链接(link)、已访问链接(visited)、激活链接(active)、鼠标停留在连接上(hover)。