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. 33 个 2017 年必须了解的 iOS/swift 开源库第三方库

    本文翻译自Medium,原作者为 Paweł Białecki<img src="https://pic3.zhimg.com/v2-c786777447261347b0d97 ...

  2. Spark大数据处理 之 RDD粗粒度转换的威力

    在从WordCount看Spark大数据处理的核心机制(2)中我们看到Spark为了支持迭代和交互式数据挖掘,而明确提出了内存中可重用的数据集RDD.RDD的只读特性,再加上粗粒度转换操作形成的Lin ...

  3. Oracle中merge into语法

    merge into 语句就是insert和update的一个封装,简单来说就是: 有则更新,无则插入 下面说怎么使用 MERGE INTO table_Name  T1(匿名) using (另外一 ...

  4. 5分钟构建无服务图片鉴黄web应用(基于FunctionGraph)

    函数工作流(FunctionGraph,FGS)是一项基于事件驱动的函数托管计算服务,托管函数具备以毫秒级弹性伸缩.免运维.高可靠的方式运行.即使在一些复杂的web应用场景中,函数工作流也能发挥出令人 ...

  5. socket 连接关闭的TIME_WAIT状态的理由

    MSL就是maximum segment lifetime(最大分节生命期),这是一个IP数据包能在互联网上生存的最长时间,超过这个时间将在网络中消失 TIME_WAIT两点原因: 1.TCP分节可能 ...

  6. spring boot +Thymeleaf+mybatis 集成通用PageHelper,做分页

    controller: /**  * 分页查询用户  * @param request  * @param response  * @return  * @throws Exception  */ @ ...

  7. Kibana 视图开发入门参考文档

    官方教程:https://www.elastic.co/blog/developing-new-kibana-visualizations GitHub源码:https://github.com/el ...

  8. 问题:git add 遇到 warning: LF will be replaced by CRLF in 警告(已解决)

    问题描述: git add file_name 提交文件时候提示 自动转换 CRLF 标识 如下图: 解决方法: 执行下面代码在命令行中执行: git config --global core.aut ...

  9. Java——socket

    Server: import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; public cla ...

  10. JAVA HTTP请求和HTTPS请求

    HTTP与HTTPS区别:http://blog.csdn.net/lyhjava/article/details/51860215 URL发送 HTTP.HTTPS:http://blog.csdn ...