一、常用选择器

  1. 通用兄弟元素选择器( E~F ):E 和 F 属于同一父元素之内,并且 F 在 E 之后,通用兄弟选择器会选择符合这样排列的所有的 F 元素。
    .test ~ p{background-color: red;}<div><p>1</p><p class="test">2</p><p>3</p><p>4</p><p>5</p></div><p>6 已脱离 div</p>

二、属性选择器

  1. E[attr^="value"]:该选择器选择属性名为 attr ,属性值以 value 开头的元素。
 a[title^='test']{background: skyblue;}<a href="https://www.lanqiao.cn" title="test">title="test"</a><br /><a href="https://www.lanqiao.cn" title="testxxx">title="testxxx"</a><br /><a href="https://www.lanqiao.cn" title="xxtest">title="xxtest"</a><br /><a href="https://www.lanqiao.cn" title="xxx">title="xxx"</a><br />

  1. E[attr$="value"]:该选择器选择属性名为 attr,属性值以 value 结尾的元素。
 a[title^='test']{background: skyblue;}<a href="https://www.lanqiao.cn" title="test">title="test"</a><br /><a href="https://www.lanqiao.cn" title="testxxx">title="testxxx"</a><br /><a href="https://www.lanqiao.cn" title="xxtest">title="xxtest"</a><br /><a href="https://www.lanqiao.cn" title="xxx">title="xxx"</a><br />

  1. E[attr*="value"]:该选择器选择属性名为 attr,属性值包含 value 的元素。
 a[title*='test']{background: skyblue;}<a href="https://www.lanqiao.cn" title="test">title="test"</a><br /><a href="https://www.lanqiao.cn" title="testxxx">title="testxxx"</a><br /><a href="https://www.lanqiao.cn" title="xxtest">title="xxtest"</a><br /><a href="https://www.lanqiao.cn" title="xxx">title="xxx"</a><br />

三、伪类选择器

  1. E:root:该选择器选择文档的根节点,效果和设置 html 相同。
 :root {background-color: skyblue;}// 等同于html{background: lightgreen;}
  1. E:nth-child(n):该选择器选择 E 元素父元素的第 n 个子元素。

n 取值为整数:子元素不一定是同种类型,只能取正整数

 p:nth-child(3){background-color: red;}<p>1</p><a href="">2</a><p>3</p><p>4</p>

n取值为表达式:取值为表达式时,选择器选择多个值,[n=0,1,2,3…]。当计算结果小于等于 0 或 大于子元素总数时,不选取元素。

 p:nth-child(2n + 1){background-color: red;}<p>1</p><p>2</p><p>3</p><p>4</p>

 p:nth-child(even){background-color: red;}<p>1</p><p>2</p><p>3</p><p>4</p>

  1. odd 相当于 2n+1。
  2. even 相当于 2n。
  1. E:nth-last-child(n):从最后一个往前计数。
 p:nth-last-child(2n+1){background-color: red;}<p>1</p><p>2</p><p>3</p><p>4</p><p>5</p>

  1. E:nth-of-type():该元素选择的是与 E 相同类型的兄弟元素。
 p:nth-of-type(2n+1){background-color: red;}<p>1th of ele,1th of p</p><p>2th of ele,2th of p</p><a href="https://www.lanqiao.cn">3th of ele,1th of a</a><p>4th of ele,3th of p</p><p>5th of ele,4th of p</p><p>6th of ele,5th of p</p>

.
5. E:last-child:该选择器选择 E 元素的父元素的最后一个子元素。

 p:last-child{color: red;}<p>第一个</p><p>第二个</p><p>第三个(最后一个)</p>


注意:该选择器需要满足父元素的最后一个元素和 E 匹配才会选取,否则不会选取。

 p:last-child{color: red;}<p>第一个</p><p>第二个</p><p>第三个(最后一个)</p><strong>真的最后一个</strong>

  1. E:first-of-type:该选择器选择 E 元素父元素的子元素的第一个与 E 元素类型一致的元素。
 p:first-of-type{color: red;}<h3>好好学习(h3)</h3><p>第一个(p)</p><p>第二个(p)</p>

  1. E:last-of-type:该选择器选择 E 元素父元素的子元素的最后一个与 E 元素类型一致的元素。
 p:last-of-type{color: red;}<h3>好好学习(h3)</h3><p>第一个(p)</p><p>第二个(p)</p>

  1. E:only-child:该元素选择的是 E 是其父元素唯一的子元素。
 .div1{width:100px;border: 2px solid;}.div2{width:100px;margin-top: 10px;border: 2px solid;}p:only-child{background: red;}<div class="div1"><p>好好学习</p></div><div class="div2"><p>好好学习</p><p>天天向上</p></div>

  1. E:only-of-type:该选择器选择的是 E 是其父元素唯一的子元素类型。
 .div1{width:100px;border: 2px solid;}.div2{width:100px;margin-top: 10px;border: 2px solid;}p:only-of-type{background: red;}<div class="div1"><p>好好学习</p></div><div class="div2"><p>好好学习</p><span>天天向上</span></div>

  1. E:empty:该选择器选择的是空元素。
 p:empty{width:200px;height:20px;background-color: red;}<p>好好学习</p><p></p><p>天天向上</p>

  1. E:target:该选择器选择的是一个 id 与 当前 url 匹配的元素。
 :target {border: 2px solid;background: lightgreen;}<a href="#p1">jump to p1</a><br /><a href="#p2">jump to p2</a><p id="p1">p1</p><p id="p2">p2</p>

  1. E:not(s):该选择器匹配不符合参数选择器 s 描述的元素。
 .demo{color: lightblue;}p:not(.demo){color:lightcoral;}:not(.demo){color:lightgreen;}<p class="demo">hello world</p><p>好好学习</p><span>天天向上</span>

第一个否定伪类选择器选择了 class 不为 demo 的 <p> 元素,样式为红色;第二个否定伪类选择器选择了 class 不为 demo 的 <span> 元素,样式为绿色。

13.E:enabled & E:disabled:该选择器匹配的是元素的可用和禁用状态。

 input:enabled{background: pink;}input:disabled{background: lightgreen;}<input type="text" name="test1" placeholder="disabled(不可选中)" disabled="true"><br><input type="text" name="test2" placeholder="enabled(可选中)">


14. E:checked:该选择器一般用于 radio-button 或 checkbox,选择它们的 checked 状态。

 input[type='checkbox']:checked{margin: 100px;}<input type="checkbox" name="checkbox">



不积跬步无以至千里 不积小流无以成江海

CSS3 —— 选择器(带你深入了解 CSS3 选择器)相关推荐

  1. html选择器有哪些child,css3选择器child有哪些?css3选择器child用法详解

    本篇文章给大家带来的内容是关于css3选择器child有哪些?css3选择器child用法详解,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 对于CSS3的结构伪类选择器,为了更好地 ...

  2. 伪元素选择器使用场景-字体图标(CSS3)

    伪元素选择器使用场景-字体图标(CSS3) <!DOCTYPE html> <html lang="en"><head><meta cha ...

  3. html伪类选择器结构,子元素伪类选择器 - CSS3 | 绿叶学习网

    子元素伪类选择器,指的就是选择某一个元素下的子元素.伪类选择器,相信小伙伴也接触过了,最典型的就是超链接的几个伪类:a:link.a:visited.a:hover.a:active. 在CSS3中, ...

  4. 什么是css选择器?css3中5种常见的基本选择器-web前端教程

    本章我们给大家讲解一下什么是css选择器?css3中5种常见的基本选择器.有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 一:什么是css选择器? CSS是一种用于屏幕上渲染html, ...

  5. html 3d立体阴影效果图,CSS3打造带阴影的旋转3D图像

    CSS3打造带阴影的旋转3D图像 Sponsor CSS3可以实现很多创新好玩的交互效果,正如今天将和大家介绍的3D旋转图像,效果很漂亮,这个旋转图像的特别之处就是支持阴影旋转和兼容响应式网页设计,使 ...

  6. CSS3实现带阴影的弹球

    实现div上下跳动时,底部阴影随着变化 <!DOCTYPE html> <html lang="en"> <head><meta char ...

  7. CSS/HTML 5简洁带图标的input日期选择器

    CSS/HTML 5简洁带图标的input日期选择器 说明 css代码 html代码 演示效果图 说明 演示效果分辨率为1980x1080分辨率效果 高度可定制修改 纯css代码控制 使用的input ...

  8. css3旋转带放大缩小效果

    下载地址 css3旋转带放大缩小效果,鼠标悬停的时候触发放大或缩小并旋转的动画. dd:

  9. 基于Element-ui 封装带分页的下拉选择器组件

    使用 Element-ui的 el-select组件时,如果下拉选项过多,一是查找选项困难,二是数据量超大(比如1w+)组件直接会卡死,所以考虑做一个带分页的下拉选择器(样式还可以再优化) 效果图 组 ...

最新文章

  1. 优达学城《DeepLearning》2-1:卷积神经网络
  2. 为什么阿里巴巴不建议在for循环中使用+进行字符串拼接
  3. 现在开始每天坚持写点啥。linux相关基础内容学习。
  4. 压力测试工具gatling安装和介绍
  5. Spring的Bean属性依赖注入
  6. express url跳转(重定向)的实现:res.location() res.redirect()
  7. 黑马程序员-JavaAPI-17天-4(Arrays)
  8. 企业落地Kubernetes的问题与对策
  9. MySQL · 特性分析 · 执行计划缓存设计与实现
  10. SVN客户端安装及操作文档
  11. python批量将word转换成pdf_python批量实现Word文件转换为PDF文件
  12. LeetCode题解:猜数字大小
  13. 【PyTorch】pkg_resources
  14. 音频信号的基波、谐波
  15. 解决IOS微信浏览器底部会出现向前向后返回按钮,返回不刷新的问题
  16. IPU VPU GPU的关系
  17. fatal: does not appear to a git repository
  18. 属蛇的2020年运势_第一运程 属蛇人2020年每月运势
  19. 六、HSV颜色空间应用实例——颜色分割提取与替换
  20. MongoDB,为何能在NoSQL家族里异军突起?

热门文章

  1. 面试题-生成10个1至20不重复的随机数
  2. 2019,记录生活、记录自己
  3. 2023电子信息工程毕设题目选题推荐
  4. 沃特世ACQUITY PREMIER色谱柱为色谱分析树立全新性能标杆
  5. 现代数字通信第八章——阵列信号处理与空域滤波
  6. 有人知道告诉一声谢谢
  7. 手语操《听我说,谢谢你》致敬“逆行者”
  8. 蓝桥试题 算法提高 找出出卖耶稣的人 JAVA
  9. centos手动安装dotnet-sdk环境和dotnet调试工具
  10. 每日一记—获取Bing每一日一图实现Android欢迎页(二)