CSS3新增(选择器{属性选择器,结构伪类选择器,伪元素选择器})
1、属性选择器
属性选择器,可以根据元素特定的属性来选择元素,这样就不用借助 类 或者 id选择器。
E [ att ] 选择具有 att 属性的 E 元素 例如:input [ value ]
E [ att = 'val' ] 选择具有 att 属性且属性值等于 val 的 E元素
E [ att = 'val' ] 选择具有 att 属性且属性值等于 val 的 E元素
E [ att ^= 'val' ] 选择具有 att 属性且属性值以 val 开头的 E元素
E [ att $= 'val' ] 选择具有 att 属性且属性值以 val 结尾的 E元素
E [ att *= 'val' ] 选择具有 att 属性且属性值含有 val 的 E元素
注意:类选择器,属性选择器,伪类选择器 权重都是 10
2、结构伪类选择器(一般用于选择父级里面的第几个孩子)
父元素 E:first-child 父元素中的第一个子元素 E
父元素 E:last-child 父元素中的最后一个子元素 E
父元素 E:nth-child( n ) 父元素中的第 N 个子元素 E
注意:
ul :first-child{ color:pink; } // 选择 ul 下的第一个子元素( 第一个子元素可以使 div,p,span任何子元素)
ul li:first-child{ color: pink; } // 选择 ul 下的第一个元素名是 li 的子元素
nth-child( n ) 注意点:(n 可以是数字,关键字和公式)
数字:选择第 n 个子元素,里面数字从 1 开始
关键字: even 偶数,odd 奇数
ul li:nth-child( even ) // 选择 ul 中所有 偶数行的 li 子元素
公式:常见公式如下(如果 n 是公式,则从 0 开始计算,但是第 0 个元素 或者超出了元素的个数会被忽略)
ul li:nth-child( n ) // 从 0 开始 每次加1 往后计算,相当于选择了所有的孩子 这里面必须是 n 不能是其他字母
偶数:2n 奇数:2n+1 5的倍数:5n 从第5个开始(包含第5个)到最后:n+5 前5 个(包含第5 个):-n + 5
E:first-of-type:指定类型 E 的第一个
E:last-of-type:指定类型 E 的最后一个
E:nth-of-type( n ):指定类型 E 的第 n 个
区别:(两种相反的查找模式)
1. nth-child 对父元素里面所有孩子排序选择(序号是固定的)先找到第 n 个孩子,然后看看是否和 E 匹配
2. nth-of-type 对父元素里面指定子元素进行排序选择。先去匹配 E ,然后再根据 E 找第 n 个孩子
3. 伪元素选择器(重点)
伪元素选择器 可以帮助我们 利用 css 创建新标签元素,而不需要 HTML 标签,从而简化 HTML 结构
:: before 在元素内部的前面插入内容
:: after 在元素内部的后面 插入内容
注意:
before 和 after 创建一个元素,但是属于行内元素
新创建的这个元素在文档树种是找不到的,所以我们称为伪元素
语法:element::before{ }
before 和 after 必须有 content 属性
before 在父元素内容的前面创建元素,after 在父元素内容的后面插入元素
伪元素选择器 和 标签选择器一样,权重为 1
4、结构伪类
:target 表示对当前活动窗口的控制
CSS3新增(选择器{属性选择器,结构伪类选择器,伪元素选择器})的更多相关文章
- 妙味css3课程---1-2、css3中新增的伪类和伪元素有哪些
妙味css3课程---1-2.css3中新增的伪类和伪元素有哪些 一.总结 一句话总结: 1.div:target{}是什么意思? 比如a标签的锚点链接到div,div:target{}就可以找到这个 ...
- css伪选择器使用总结——css中关于伪类和伪元素的知识总汇
CSS 伪类用于向某些选择器添加特殊的效果,而CSS引入伪类和伪元素的概念是为了实现基于文档树之外的信息的格式化.这里讲总结关于css伪类和伪元素的相关使用 伪元素 :before/:before 在 ...
- 以css伪类为基础,引发的选择器讨论 [新手向]
作为第一篇技术干货,来写哪个方面的内容,我着实考虑了很久. 经过了整整30秒的深思熟虑,我决定就我第一次发现新大陆一样的内容,来进行一次讨论. 伪类:伪类对元素进行分类是基于特征(characteri ...
- CSS样式表及选择器相关内容(二)-伪类与伪元素选择器
伪类与伪元素选择器归纳: 一.伪类选择器(伪类以":"开头,用在选择器后,用于指明元素在某种特殊的状态下才能被选中) 1.a标签伪类选择器,其他标签类似 eg: ...
- 【CSS】伪类和伪元素选择器
伪类 基于当前元素所处的状态或具有的特性,用于设置元素自身的特殊效果. a:link 规定所有未被点击的链接: a:visited 匹配多有已被点击过的链接: a:active 匹配所有鼠标按下 ...
- CSS 属性 - 伪类和伪元素的区别
伪类和伪元素皆独立于文档结构.它们获取元素的途径也不是基于id.class.属性这些基础的元素特征,而是在处于特殊状态的元素(伪类),或者是元素中特别的内容(伪元素).区别总结如下: ①写法不一样: ...
- css3 -- 伪类与伪元素
伪类: 1.结构伪类 A:E : first-child{} E : nth-*(n){} E : first-*(even){} E : first-*(odd){} B:nth-child 是根 ...
- 《转载》详解 CSS 属性 - 伪类和伪元素的区别
首先,阅读 w3c 对两者的定义: CSS 伪类用于向某些选择器添加特殊的效果. CSS 伪元素用于将特殊的效果添加到某些选择器. 可以明确两点,第一两者都与选择器相关,第二就是添加一些“特殊”的效果 ...
- css3的伪(伪类和伪元素)大合集
本文讲css3的伪,不是讲它有多虚伪,而是说它的伪元素样式.不得不说以前虽知html伪元素,但很少用,后得知借助css3伪元素可以发挥极大的便利.故总结css3的伪如下: CSS中存在一些比较特殊的属 ...
- CSS3伪类和伪元素的特性和区别
前端er们大都或多或少地接触过CSS伪类和伪元素,比如最常见的:focus,:hover以及<a>标签的:link.visited等,伪元素较常见的比如:before.:after等. 其 ...
随机推荐
- BUUCTF 梅花香自苦寒来
梅花香自苦寒来 打开图片可以看到,在jpg后面有大量的数据,将它保存出来,可以看出是十六进制,将它转为ascii,写脚本 with open('hex.txt','r') as h: h=h.read ...
- ThreadLocal的使用和理解
ThreadLocal是个threadlocalvariable(线程局部变量),其实就是为每一个使用该变量的线程都提供一个变量值的副本,从线程的角度看,每个线程都保持一个对其线程局部变量副本的隐式引 ...
- vscode 常用的插件
这些是本人在使用vscode中用的比较爽的插件,个人爱好习惯不同,请按需拿取.先声明本人是一个前端,所用的,插件都是和前端匹配的,后台的同学可以不用浪费时间了 基础插件 chinese 英文是所有读书 ...
- Electron-vue实战(三)— 如何在Vuex中管理Mock数据
Electron-vue实战(三)— 如何在Vuex中管理Mock数据 作者:狐狸家的鱼 本文链接:Vuex管理Mock数据 GitHub:sueRimn 在vuex中管理mock数据 关于vuex的 ...
- UNP学习第四章tcp
一.TCP简单流程图 因为对于server我已经写过一篇笔记了:http://www.cnblogs.com/ch122633/p/8315883.html 所以我想再补充一些对于client的部分的 ...
- Qt开发MySQL程序发布后出现"Driver not loaded"的问题
1.安装qt的显示界面程序 2.安装mysql-server 3.给系统增加mysql-server的环境C:\Program Files\MySQL\MySQL Server 5.7\bin 4.将 ...
- mysql查询诊断分析工具
Query Profiler是MYSQL自带的一种query诊断分析工具,通过它可以分析出一条SQL语句的性能瓶颈在什么地方.通常我们是使用的explain,以及slow query log都无法做到 ...
- 如何用python读写CSV 格式文件
工作中经常会碰到读写CSV文件的情况.记录下,方便自己以后查询并与大家一起分享: 写CSV文件方法一: import csv #导入CSV with open("D:\eg ...
- Gson extend 思路
package org.rx.core.internal; import com.google.gson.*; import net.sf.cglib.proxy.Enhancer; import n ...
- C++ Compiling… Error spawning cl.exe
转自VC错误:http://www.vcerror.com/?p=500 解决方法: 方法(一): 启动VC时不要用图形界面,通过在命令提示符下输入:Msdev /useenv运行(注意啦/前面有个空 ...