CSS选择器】 CSS3新增选择器有哪些?

2020-05-17 11:01发布

5条回答
爱前端
2楼 · 2020-05-18 10:35

选择器         例子     例子描述

element1~element2 p~ul 选择前面有 p元素的每个 ul元素。

[attribute^=value] a[src^="https"] 选择其 src 属性值以 "https" 开头的每个 元素。

[attribute$=value] a[src$=".pdf"] 选择其 src 属性以 ".pdf" 结尾的所有 元素。

[attribute*=value] a[src*="abc"] 选择其 src 属性中包含 "abc" 子串的每个 a元素。

:first-of-type p:first-of-type 选择属于其父元素的首个 p 元素的每个 p元素。

:last-of-type p:last-of-type 选择属于其父元素的最后 p 元素的每个 p元素。

:only-of-type p:only-of-type 选择属于其父元素唯一的 p 元素的每个p 元素。

:only-child p:only-child 选择属于其父元素的唯一子元素的每个 p元素。

:nth-child(n) p:nth-child(2) 选择属于其父元素的第二个子元素的每个 p元素。

:nth-last-child(n) p:nth-last-child(2) 同上,从最后一个子元素开始计数。

:nth-of-type(n) p:nth-of-type(2) 选择属于其父元素第二个p元素的每个

元素。

:nth-last-of-type(n) p:nth-last-of-type(2) 同上,但是从最后一个子元素开始计数。

:last-child p:last-child 选择属于其父元素最后一个子元素每个

元素。

:root :root 选择文档的根元素。

:empty p:empty 选择没有子元素的每个 p>元素(包括文本节点)。

:target #news:target 选择当前活动的 #news 元素。

:enabled input:enabled 选择每个启用的 input 元素。

:disabled input:disabled 选择每个禁用的 input 元素

:checked input:checked 选择每个被选中的 input>元素。

:not(selector) :not(p) 选择非 p元素的每个元素。

::selection ::selection 选择被用户选取的元素部分。

苏橙C
3楼 · 2020-05-17 16:32

通用兄弟选择器、伪类选择器、伪元素选择器、否定选择器、状态伪类选择器


Dillion
4楼 · 2020-05-19 21:33

1.新增属性选择器:

E[foo^='bar'] 匹配E元素,该元素包含foo属性,且foo属性值以bar开头

E[foo$='bar'] 匹配E元素,该元素包含foo属性,且foo属性值以bar结尾

E[foo*='bar'] 匹配E元素,该元素包含foo属性,且foo属性值包含bar字符串


2.新增结构伪类选择器:

E:root 匹配文档所在的根元素

E:nth-child(n) 匹配E所在父元素第n个匹配E的元素,非E的子元素也参与排序,若第n个子元素不是E元素,则该语句没有效果(注意这里的n从1开始)

E:nth-last-child(n) 匹配E所在父元素倒数第n个匹配E的元素

E:nth-of-type(n) 匹配E所在父元素第n个匹配E的元素,非E的子元素不参与排序(n同样是从1开始)注意区别nth-child(n)

E:last-child

E:first-of-type

E:last-of-type

E:only-child

E:only-of-type

E:empty


HUANG
5楼 · 2020-05-20 22:38

属性选择器

- css2中的属性选择器
   [attr] :选择有属性为attr的元素
   [attr=val]  :选择有属性attr并且属性值为val的元素
   [attr~=val] :选择有属性attr,其值是一个词列表,且含有val的元素

-css3新增属性选择器
   [attr^=val] :选择有属性attr并且属性值以val开头的元素
   [attr$=val] :选择有属性attr并且其属性值以val结尾的元素
   [attr*=val] :选择有属性attr并且其属性值包含val的元素

结构性伪类选择器

E:first-child   :选择其父元素中的第一个元素
E:last-child    :选择其父元素中最后一个元素
E:nth-child(n)   :选择其父元素中的第n个元素
   n的值可以为:
       -0和正整数
       -n的倍数(*n)
       -odd | even (奇数 | 偶数)
E:nth-last-child(n)  :选择其父元素中倒数第n个元素,n的取值同上

E:first-of-type     :选择其父元素中类型为E的第一个元素
E:last-of-type      :选择其父元素中类型为E的倒数第一个元素
E:nth-of-type(n)    :选择其父元素中类型为E的第n个元素
E:nth-last-of-type(n)   :选择其父元素中类型为E的倒数第n个元素

状态伪类选择器

- :enabled   :选择表单元素是可用状态的元素
- :disabled  :选择表单元素为禁用状态下的元素
- :checked  :选择多选框的表单元素为选中状态下的元素
- ::selection  :元素被选中(一般是选中的的文字的样式)



α
6楼 · 2020-09-09 19:57

element1~element2p~ul选择前面有 p 元素的每个 ul 元素。3
[attribute^=value]a[src^="https"]选择其 src 属性值以 "https" 开头的每个 a 元素。3
[attribute$=value]a[src$=".pdf"]选择其 src 属性以 ".pdf" 结尾的所有 a 元素。3
[attribute*=value]a[src*="abc"]选择其 src 属性中包含 "abc" 子串的每个 a元素。3
:first-of-typep:first-of-type选择属于其父元素的首个 p 元素的每个 p 元素。3
:last-of-typep:last-of-type选择属于其父元素的最后 p 元素的每个 p 元素。3
:only-of-typep:only-of-type选择属于其父元素唯一的 p元素的每个 p 元素。3
:only-childp:only-child选择属于其父元素的唯一子元素的每个 p元素。3
:nth-child(n)p:nth-child(2)选择属于其父元素的第二个子元素的每个 p 元素。3
:nth-last-child(n)p:nth-last-child(2)同上,从最后一个子元素开始计数。3
:nth-of-type(n)p:nth-of-type(2)选择属于其父元素第二个 p元素的每个 p 元素。3
:nth-last-of-type(n)p:nth-last-of-type(2)同上,但是从最后一个子元素开始计数。3
:last-childp:last-child选择属于其父元素最后一个子元素每个 p元素。3
:root:root选择文档的根元素。3
:emptyp:empty选择没有子元素的每个 p 元素(包括文本节点和空格)。3
:target#news:target选择当前活动的 #news 元素。3
:enabledinput:enabled选择每个启用的 input元素。3
:disabledinput:disabled选择每个禁用的 input 元素3
:checkedinput:checked选择每个被选中的 input 元素。3
:not(selector):not(p)选择非 p 元素的每个元素。3
::selection::selection选择被用户选取的元素部分。3


相关问题推荐

  • 回答 15
    已采纳

    css中有很多选择器,比如类别选择器、标签选择器、ID选择器、后代选择器、子选择器、伪类选择器、通用选择器、群组选择器等,常见的选择器有id选择器、类选择器、标签选择器三大类。...

  • 回答 6

    相邻兄弟选择器、通用兄弟选择器、属性选择器、伪类选择器、伪元素选择器

  • 回答 3

    1、相邻兄弟选择器作用:匹配指定元素的相邻【下一个】兄弟元素语法:由 + 号来充当连接符,如 选择器1+选择器2

  • 回答 9

           1.   !important    在属性后面写上这条样式,会覆盖掉页面上任何位置定义的元素的样式。  2.   行内样式,在style属性里面写的样式。  3.  id选择器  4. class选择器  5. 标签选择器    6. 通配符选择器*  7. 浏览器的自...

  • 回答 9

    ID选择器:#header {}类选择器:.header {}元素选择器:div {}子选择器:ul > li {}后代选择器:div p {}伪类选择器:a:hover {}属性选择器:input[type=text] {}

  • 回答 6

    id选择器(#ID)在使用ID选择器之前需要先在html文档中加注ID名称,这样在样式选择器中才能找到相对应的元素,不同的是ID选择器是一个页面中唯一的值,我们在类使用时是在相对应的类名前加上一个.号(.className)而id选择器是在名称前使用#如(#id),...

  • 回答 1

    CSS 的后代选择器本身就是一种在标准里面不那么推荐的方式。首先,对浏览器来说,ID 选择器 #xx 是最快的,其次是 class 选择器、html 元素选择器等。假如 DOM 的结构如上图,e799bee5baa6e58685e5aeb931333363383938匹配规则是 .mod-nav h3 span。若从左向右...

  • 回答 2

    CSS哪些属性可以继承?css继承特性主要是指文本方面的继承,盒模型相关的属性基本没有继承特性。不可继承的:display、margin、border、padding、background、height、min-height、max-height、width、min-width、max-width、overflow、position、top、bottom...

  • 回答 9

    CSS主要的作用就是给网页中的dom元素设置样式,选择器则是用来匹配dom元素的。CSS中的选择器有三种,分别是标签选择器(根据元素标签名称),类选择器(根据元素class属性),id选择器(根据元素id属性),并且三种选择器可以相互结合使用例如:body{background-col...

  • 回答 4

    一、CSS选择器有哪些CSS中的选择器很多,比如:ID选择器,类选择器,通配符选择器,伪类选择器等等,接下来主要介绍常用的几个。1.标签选择器语法:标签名{},eg:h1{}//为所有的h1元素设置样式。2.ID选择器语法:#id名{}//id值唯一不能重复,eg:#top{}//为id...

没有解决我的问题,去提问