CSS3 选择器小结

一 通用选择器

1  *{}通配选择符(CSS2):适合所有元素对象。

2  E类型(HTML)选择符(CSS1):以文档语言对象类型DOM作为选择符。

3  E#myid是id选择符(CSS1):以唯一标识符id属性等于myid的E对象作为选择符。

4  E.myclass是类class选择符(CSS1):以class属性包含myclass的E对象作为选择符。

5  E F:包含选择符(CSS1):选择所有被E元素包含的F元素。

CSS3新增的通用选择器:同级元素通用选择器:

1  通用选择器E~F{}:匹配的是E元素之后的同级F元素匹配E后边所有的F,EF同级。只要F在E的后边,E只是作为一个参考。E~F { background:#ff0; }

2  临近(相邻)选择器(css2):E+F{}:EF元素相邻,即选择紧贴在E元素之后F元素。

3  包含(子)选择器(css2):E>F{}:EF不可以隔代,E只能匹配到下一个相邻辈F。

二 属性选择器

1.E[att^="val"]:选择具有att属性且属性值为以val开头的字符串的E元素。

2.E[att$="val"]:选择具有att属性且属性值为以val结尾的字符串的E元素。

3.E[att*="val"]:选择具有att属性且属性值为包含val的字符串的E元素。

4.E[att|="val"] 选择具有att属性且属性值为以val开头并用连接符"-"分隔的字符串的E元素。

5.E[att] 选择具有att属性的E元素。

6.E[att="val"]选择具有att属性且属性值等于val的E元素。

7.E[att~="val"]选择具有att属性且属性值为一用空格分隔的字词列表,其中一个等于val的E元素。

注:4~7是CSS2特有的属性。 input最常用属性选择器。

三  伪类选择器

1 与用户界面有关的伪类:

(1)  E:enabled:匹配表单中激活的元素,表单中可操作的元素。

(2)  E:disabled(常用):常用匹配表单中禁用的元素 disabled="disabled"  。 eg:input[type="text"]:disabled { background:#ddd;} 只可以看不可操作。

(3)  E:checked:匹配表单中被选中的radio(单选框)或checkbox(复选框)元素

是整体伪类(匹配整个DOM文档):

(4)  ::selection 匹配用户当前选中的元素,即设置对象被选择时的颜色。 ::selection。

2 结构性伪类

1) :root 匹配文档的根元素,对于HTML文档,就是只能匹配HTML根元素。

2) E:nth-child(n) 匹配其当前元素

E :nth-child(n):匹配其父元素E的第n个子元素,第一个编号为1

E F:nth-child(n):匹配其父元素E的第n个F元素,第一个编号为1(貌似只对ul 可用)

3) E:nth-last-child(n):匹配其父元素的倒数第n个子元素,第一个编号为1。

E:last-child:匹配父元素的最后一个子元素,等同于:nth-last-child(1)。

4) E :nth-of-type(n):与:nth-child(n)作用类似,但是仅匹配使用同种标签的元素。

5) E :nth-last-of-type(n):与:nth-last-child(n) 作用类似,但是仅匹配使用同种标签的元素 。

6) E :first-of-type :匹配父元素下使用同种标签的第一个子元素,等同于:nth-of-type(1) 。

7) E :last-of-type :匹配父元素下使用同种标签的最后一个子元素,等同于:nth-last-of-type(1)。

8) E :only-child:匹配父元素仅有的一个子元素。。

9) E:only-of-type:匹配父元素下使用同种标签的唯一一个子元素,等同于:first-of-type,:last-of-type或 :nth-of-type(1),:nth-last-of-type(1) 。

10) E :empty 匹配一个不包含任何子元素的元素,注意,文本节点也被看作子元素.,空白节点也被看做子节点。

11) E:not(s) 匹配不符合当前选择器的任何元素 :not(:nth-child(1))。

3

1) E:link{}:链接伪类选择器,设置超链接a在未被访问前的样式。

2) E:visited{}:链接伪类选择器,设置超链接a在其链接地址已被访问过时的样式。

3) E:hover{}:用户操作伪类选择器,设置元素在其鼠标悬停时的样式。

4) E:active{}:用户操作伪类选择器,设置元素在被用户激活(在鼠标点击与释放之间发生的事件)时的样式。

5) E:focus{}用户操作伪类选择器,设置元素在成为输入焦点(该元素的onfocus事件发生)时的样式。

6) E:lang{}:伪类选择器,匹配使用特殊语言的E元素。

CSS3选择器小结的更多相关文章

  1. CSS3选择器使用小结

    CSS3 选择器小结 一 通用选择器 1  *{}通配选择符(CSS2):适合所有元素对象. 2  E类型(HTML)选择符(CSS1):以文档语言对象类型DOM作为选择符. 3  E#myid是id ...

  2. 总结30个CSS3选择器

    或许大家平时总是在用的选择器都是:#id  .class  以及标签选择器.可是这些还远远不够,为了在开发中更加得心应手,本文总结了30个CSS3选择器,希望对大家有所帮助. 1 *:通用选择器 ;; ...

  3. 总结30个CSS3选择器(转载)

    或许大家平时总是在用的选择器都是:#id  .class  以及标签选择器.可是这些还远远不够,为了在开发中更加得心应手,本文总结了30个CSS3选择器,希望对大家有所帮助. 1 *:通用选择器 * ...

  4. CSS3 选择器——属性选择器

    上一节在<CSS3选择器——基本选择器>中主要介绍了CSS3选择器的第一部分,这节主要和大家一起来学习CSS3选择器的第二部分——属性选择器.属性选择器早在CSS2中就被引入了,其主要作用 ...

  5. css3 选择器(三)

    接css3选择器(一) 接css3 选择器(二) 这篇和前两篇内容相关性不大,主要是涉及到一些css3的状态选择器,所以标题从一开始. 一.[:enabled]选择器 一看这个属性就知道是专为表单元素 ...

  6. CSS3选择器介绍

    1.css3属性选择器 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  7. CSS3 选择器——基本选择器

    CSS的选择器,我想大家并不会陌生吧,因为天天在使用,但对于CSS3的选择器,要运用的灵活到位,我想对很多朋友还是一定的难度,特别是CSS3中的:nth选择器.那么从现在开始我们先丢开他们版本的区别, ...

  8. CSS3选择器的研究,案例

    在上一篇CSS3选择器的研究中列出了几乎所有的CSS3选择器,和伪类选择器,当是并没有做案例的研究,本想在那篇文章里面写,但想想如果把案例都写在那篇文章里面,对于查找来说就不是很方便,所有另开一篇来讲 ...

  9. css3选择器(一)

    直接开始正文. 一.css3同级元素通用选择器[update20161228] 选择器:E~F 匹配任何在E元素之后的同级F元素 Note:E~F选择器选中的是E元素后面同级元素中的全部F元素. 例: ...

随机推荐

  1. php中urlencode使用

    URLEncode的方式一般有两种,一种是传统的基于GB2312的Encode(Baidu.Yisou等使用),另一种是基于UTF-8的Encode(Google.Yahoo等使用). 本工具分别实现 ...

  2. C语言基础学习基本数据类型-int类型与int变量

    int类型与int变量 针对不同的用途,C语言提供了多种整数类型.各种整数类型的区别在于所提供数值的范围,以及数值是否可以取负值. 在之前的实例中你已经看到过,int关键字用于声明整型变量. int类 ...

  3. C++ 继承和包含的区别?

    在<代码大全>这本书的第六章中提到了有关包含与继承的一些原则,我摘取如下: 一.包含("has a") 包含表示一个类含有一个基本数据元素或对象.包含是面向对象编程的主 ...

  4. TestNG使用Eclipse建立Test Case - 就是爱Java

    除了JUnit可以进行单元测试外,还可以使用TestNG来撰写Test Case,这是另一种测试Framework,它是为更广泛的测试场合而设计,可以运行在没有修改过的JUnit测试,除非看到它们的i ...

  5. Javascript 原型注意事项

    function abc() {} abc.prototype.xx = { name: "keatkeat" } var x = new abc(); x.xx.name = & ...

  6. bash与sh的区别

    在shell脚本的开头往往有一句话来定义使用哪种sh解释器来解释脚本.目前研发送测的shell脚本中主要有以下两种方式:(1) #!/bin/sh(2) #!/bin/bash在这里求教同福客栈的各位 ...

  7. redis maxmemory设置

    关于maxmemory的设置,如果redis的应用场景是作为db使用,那不要设置这个选项,因为db是不能容忍丢失数据的. 如果作为cache使用,则可以启用这个选项(其实既然有淘汰策略,那就是cach ...

  8. 写在学习linux内核协议栈之前

    一直很喜欢内核,但是新手,非常的痛苦啊.现在看一本linux内核协议栈源码解析一书,将自己学习的经历以及 理解记录下来,以备将来回头查漏补缺,同时校正自己的理解错误,自勉

  9. xcode插件——新建cocos2dx工程

    个人制作的一个创建cocos2dx工程的xcode小插件 按照readme安装一下即可. 创建工程后,将自动弹出finder到工程目录. 弹出窗口:

  10. Django架设blog步骤

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...