CSS3 选择器

纪念一次惋惜的面试经历,明明知道但是保守的没有全说出来。。。first face _shp欣

  在 CSS 中,选择器是一种模式,用于选择需要添加样式的元素

css选择器

  1标签名选择器:如:p{},即直接使用html标签作为选择器,在实际的应用中,我们习惯用它设置标签的一些默认属性或者和后代选择器一起使用;

  2类选择器:如  .polaris();前端开发者最常用。

  特点:(1)可以给不同标签设置同一个类,从而用一条css命令控制几个标签,减少代码量,使页面修改简单,易维护、易改版。

     (2)后台工作人员几乎不会用到有关class的相关设置,不需要跟后台人员之间进行交互;(3)可以通过js等动态改变标签的classname,从而改变整个标签的样式,使前端动态效果实现起来更为容易。

      命名规范:第一个字符不能使用数字,在mozillafirefox中不起作用。

  3id选择器: 如:#polaris();在同一个html文档中不能出现两个相同的id名称,也就是说id具有唯一性。

  4后代选择器:如 .polaris  span  img{},后代选择器实际上是使用多个选择器加上中间的空格来找到具体的要控制的标签。    

  5群组选择器.polaris span img{},实际上是对css的一种简化写法,是把具有相同css样式的不同选择器放在一起,减少代码量。

 

      "CSS" 列指示该属性是在哪个 CSS 版本中定义的。(CSS1CSS2 还是 CSS3。)

选择器

例子

例子描述

CSS

.class

.intro

选择 class="intro" 的所有元素。

1

#id

#firstname

选择 id="firstname" 的所有元素。

1

*

*

选择所有元素。

2

element

p

选择所有 <p> 元素。

1

element,element

div,p

选择所有 <div> 元素和所有 <p> 元素。

1

element element

div p

选择 <div> 元素内部的所有 <p> 元素。

1

element>element

div>p

选择父元素为 <div> 元素的所有 <p> 元素。

2

element+element

div+p

选择紧接在 <div> 元素之后的所有 <p> 元素。

2

[attribute]

[target]

选择带有 target 属性所有元素。

2

[attribute=value]

[target=_blank]

选择 target="_blank" 的所有元素。

2

[attribute~=value]

[title~=flower]

选择 title 属性包含单词 "flower" 的所有元素。

2

[attribute|=value]

[lang|=en]

选择 lang 属性值以 "en" 开头的所有元素。

2

:link

a:link

选择所有未被访问的链接。

1

:visited

a:visited

选择所有已被访问的链接。

1

:active

a:active

选择活动链接。

1

:hover

a:hover

选择鼠标指针位于其上的链接。

1

:focus

input:focus

选择获得焦点的 input 元素。

2

:first-letter

p:first-letter

选择每个 <p> 元素的首字母。

1

:first-line

p:first-line

选择每个 <p> 元素的首行。

1

:first-child

p:first-child

选择属于父元素的第一个子元素的每个 <p> 元素。

2

:before

p:before

在每个 <p> 元素的内容之前插入内容。

2

:after

p:after

在每个 <p> 元素的内容之后插入内容。

2

:lang(language)

p:lang(it)

选择带有以 "it" 开头的 lang 属性值的每个 <p> 元素。

2

element1~element2

p~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-type

p:first-of-type

选择属于其父元素的首个 <p> 元素的每个 <p> 元素。

3

:last-of-type

p:last-of-type

选择属于其父元素的最后 <p> 元素的每个 <p> 元素。

3

:only-of-type

p:only-of-type

选择属于其父元素唯一的 <p> 元素的每个 <p> 元素。

3

:only-child

p: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-child

p:last-child

选择属于其父元素最后一个子元素每个 <p> 元素。

3

:root

:root

选择文档的根元素。

3

:empty

p:empty

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

3

:target

#news:target

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

3

:enabled

input:enabled

选择每个启用的 <input> 元素。

3

:disabled

input:disabled

选择每个禁用的 <input> 元素

3

:checked

input:checked

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

3

:not(selector)

:not(p)

选择非 <p> 元素的每个元素。

3

::selection

::selection

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

3

posted @ 2017-04-10 23:44  雪山上的蒲公英  阅读(291)  评论(0编辑  收藏  举报
/* 返回顶部代码 */