CSS选择器备忘录

  1. 基本选择器

    Selector Meaning Example
    通用选择器 匹配任何元素 *
    标签选择器 CSS1中称之为元素选择器,匹配为指定标签的所有元素 div
    伪元素选择器 匹配元素内容中的指定部分,选择器E可省略 E::first-line
    类选择器 匹配class属性中包含指定类的元素 .warning
    伪类选择器 匹配满足某种状态或是符合某种逻辑的元素,选择器E可省略 E:hover或E:first-child
    id选择器 匹配id属性为指定名称的元素 #content
  2. 属性选择器

    Selector Meaning Example
    E[att] 匹配满足选择器E的元素的满足选择器F且具有att属性的元素,与属性att值无关;E可省略,下同 p[class]
    E[attr="val"] 匹配满足选择器E且att属性值为"val"的元素 p[class~="warning"]
    E[attr~="val"] 匹配满足选择器E且att属性中有一个值为"val"的元素 p[class~="warning"]
    E[attr^="sub"] 匹配满足选择器E且att属性中有一个值为"sub"开头的元素 p[class^="test-"]
    E[attr$="sub"] 匹配满足选择器E且att属性中有一个值为"sub"结尾的元素 a[href$=".pdf"]
    E[attr*="sub"] 匹配满足选择器E且att属性中有一个值包含"sub"的元素 div [class*="port"]
    E[lang|="val"] 匹配满足选择器E且其lang属性的值为指定val开头的元素, html[lang|="en"]

    注:lang属性允许开发者为不同的语言定义特殊的规则,语言代码和国家地区对照表详见https://www.cnblogs.com/Robert-huge/p/5481515.html

  3. 组合选择器

    Selector Meaning Example
    E F 匹配满足选择器E的元素的所有满足选择器F的内部元素 body h1
    E>F 匹配满足选择器E的元素的满足选择器F的直接子元素 ul > li
    E+F 匹配满足选择器E的元素的下一个兄弟元素,且该元素要满足选择器F h1 + *
    E~F 匹配满足选择器E的元素后面所有满足选择器F的兄弟元素 h1 ~ h2

注:E,F表示匹配满足选择器E或是选择器F的元素,没有将E,F算入组合选择器,因为它完全可以拆分成多个基本选择器或属性选择器,只能算是CSS提供的一种为了减少冗余编码的编码方式。

延伸阅读

[1] 选择器的优先级相关内容详见CSS中的样式层叠机制Cascade

[2] 伪类和伪元素的分析比较详见伪类与伪元素的区别

参考资料

[1] CSS Pocket Reference

[2] CSS选择器笔记

CSS选择器备忘录的更多相关文章

  1. 前端极易被误导的css选择器权重计算及css内联样式的妙用技巧

    记得大学时候,专业课的网页设计书籍里面讲过css选择器权重的计算:id是100,class是10,html标签是5等等,然后全部加起来的和进行比较... 我只想说:真是误人子弟,害人不浅! 最近,在前 ...

  2. css选择器

    常用css选择器,希望对大家有所帮助,不喜勿喷. 1.*:通用选择器 * { margin: 0; padding: 0; } 选择页面上的全部元素,通常用于清除浏览器默认样式,不推荐使用. 2.#i ...

  3. dynamic-css 动态 CSS 库,使得你可以借助 MVVM 模式动态生成和更新 css,从 js 事件和 css 选择器的苦海中脱离出来

    dynamic-css 使得你可以借助 MVVM 模式动态生成和更新 css,从而将本插件到来之前,打散.嵌套在 js 中的修改样式的代码剥离出来.比如你要做元素跟随鼠标移动,或者根据滚动条位置的变化 ...

  4. CSS选择器的权重与优先规则?

    我们做项目的时候,经常遇到样式层叠问题,被其他的样式覆盖,或者写的权重不高没效果,对权重没有具体的分析,做了一个总结. css继承是从一个元素向其后代元素传递属性值所采用的机制.确定应当向一个元素应用 ...

  5. css选择器的使用详解

    -.css选择器的分类: 二.常用选择器详解: 1.标签选择器: 语法: 标签名 { 属性:属性值; } 代码示例: h1 { color: #ccc; font-size: 28px; } 2.类选 ...

  6. js,jq,css选择器

    js获取节点: var chils= s.childNodes; //得到s的全部子节点 var par=s.parentNode; //得到s的父节点 var ns=s.nextSbiling; / ...

  7. CSS系列:CSS选择器

    选择器(selector)是CSS中很重要的概念,所有HTML语言中的标记样式都是通过不同的CSS选择器来控制的.用户只需要通过选择对不同的HTML标签进行选择,并赋予各种样式声明,即可实现各种效果. ...

  8. 细说CSS选择器

    众所周知,CSS的一个核心特征就是能向文档中的一组元素类型应用某些规则.每个规则都有两个基本部分:选择器(selector)和声明块(declaration block).下图显示了规则的各个部分. ...

  9. CSS选择器 转

    来自于:http://www.cnblogs.com/webblog/archive/2009/08/07/1541005.html 最近在研究jQuery的选择器,大家知道jQuery的选择器和cs ...

随机推荐

  1. P4015 运输问题

    \(\color{#0066ff}{题目描述}\) W 公司有 m 个仓库和 n 个零售商店.第 i 个仓库有 \(a_i\) 个单位的货物:第 j 个零售商店需要 \(b_j\) 个单位的货物. 货 ...

  2. 数据结构5: 链表(单链表)的基本操作及C语言实现

    逻辑结构上一个挨一个的数据,在实际存储时,并没有像顺序表那样也相互紧挨着.恰恰相反,数据随机分布在内存中的各个位置,这种存储结构称为线性表的链式存储. 由于分散存储,为了能够体现出数据元素之间的逻辑关 ...

  3. 前三次OO作业总结

    一.作业总结 前三次的任务都是表达式求导.这是我在高中就思考过的问题,但是很久都没有付诸实践,直到学习了"类"这个强大的工具.还有正则表达式,如果能适当使用,则不失为一个字符串格式 ...

  4. PHP删除目录下包含某个字符串的全部文件

    //获取全部的路径 function tree(&$arr_file, $directory, $dir_name='') { $mydir = dir($directory);    whi ...

  5. shell操作数组

    #!/bin/bash nums=( ) echo ${#nums[*]} #向数组中添加元素 nums[]="http://c.biancheng.net/shell/" ech ...

  6. 07. 如何实现移动端rem适配

    如何实现移动端rem适配 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  7. 在本地开发环境没问题,但是发布到服务器出现:未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\106f9ae8\cc0e1169\App_global.asax.haz99mum.dll”--“拒绝访问。 ”错误

    解决方法: 1,通常的解决方法:原因是由于系统目录下的Temp目录无相应的权限所致,具体操作如下:C:\Windows\temp-->属性-->安全-->编辑-->添加NETW ...

  8. buildKibanaServerUrl

    private String buildKibanaServerUrl(DiscountIndexMailData mailData,Statistic stat,String failureCaus ...

  9. md5,base64加密

    import java.security.MessageDigest; import org.apache.commons.codec.binary.Base64;import org.apache. ...

  10. 利用Shell脚本实现远程MySQL自动查询

    下面这个脚本是一个简单用来执行远程数据库查询的命令,相信大家都能看得懂,这对于有些需要每天自动检查数据库或是执行某些语句的兄弟,是很有帮助的,只要稍加修改就可以 #!/bin/shHOST=192.1 ...