CSS3 结构伪类选择器 详解
1 CSS3 结构伪类选择器
1.E:root
匹配E元素所在的根元素 即:html
2. E:nth-child(n)
(1)匹配E元素的父元素中第n个子元素,(2)且该位置的子元素类型必须是E类型。否则无效
p:nth-child(1){color:red}
<div>
<p>这是红色的<p>
</div>
<div>
<h1>这是第一个子元素 但不是P类型,不是红色</h1>
< p>这是黑色的 注意对比 nth-of-type(1) </p>
</div>
3. E:nth-of-type(n)
匹配E的父元素中所有的E类型的元素,忽略其他类型的元素。n 为p的个数,不算别的类型子元素
p:nth-of-type(1) {color:red}
<div>
<p>这是红色的</p>
</div>
<div>
<h1>你不是P元素,我不匹配你</h1>
<p>这是红色的</p>
</div>
4. E:nth-last-child(n)
和nth-child(n)一样,只不过是倒着来
5. E:nth-last-of-type(n)
和nth-of-type(n)一样,只不过是倒着来
6. E:first-child
匹配E的父元素中的第1个子元素,且这个元素类型必须是E类型,不是E类型无效。
实际上等同于E:nth-child(1)
p:first-child{color:red}
<div>
<p>这是红色的</p>
<p>这是黑色的</p>
</div>
<div>
<h1>这是黑色的(是第一个子元素但不是P类型。因而无效)</h1>
<p>这是黑色的</p>
<p>这是黑色的</p>
</div>
7. E:last-child
同上 匹配最后一个子元素,且该子元素必须是E类型,样式才有效。
8. E:first-of-type
匹配E的父元素的所有类型为E的子元素,忽略别的类型的子元素。是E:nth-of-type(n)的特例 n=1
//p:nth- of-type(1) {color:red}
p:first-of-type{color:red}
<div>
<p>这是红色的</p>
</div>
<div>
<h1>虽然你是第一个子元素,但你不是P元素,我不匹配你</h1>
<p>这是红色的<p>
</div>
9. E:last-of-type
匹配E的父元素中所有类型为E的子元素,忽略其他类型的子元素,是E:nth-last-of-type(n) n=1的特列
10. E:only-child 自我为中心 排斥同类和异类
匹配:E的父元素只有一个子元素,且该子元素必须是E类型。不然无效。好自私,拒绝二胎
p:only-child{color:red}
<div>
<p>这是红色的</p>
</div>
<div>
<h1>该div不只一个孩子,所以不匹配。</h1>
<p>这是黑色的</p>
</div>
<div>
<p>这是黑色的</p>
<p>这是黑色的</p>
</div>
11. E:only-of-type 只排斥同类
这个限制比上面宽松一些,可以允许父节点有别的孩子,但是别的孩子不能是E类型的。
p:only-of-type{color:red}
<div>
<p>这是红色的</p>
</div>
<hr>
<div>
<p>这是黑色的(只能有1个同类型节点)</p>
<p>这是黑色的</p>
</div>
<hr>
<div>
<h1>下面这个p 大度些,允许异类存在</h1>
<p>这是红色的</p>
<a> link </a>
</div>
12. E:empty
选择匹配E类型的元素,且该元素是五保户,没有子节点。
div:empty{boder:solid 1px green;height:30px}
<!--下面这个div有边框-->
<div></div>
<hr>
<!--下面这个div无边框 换行和空格都算文本元素-->
<div>
</div>
<hr>
<!—下面这个div -->
<div>
这个div有子元素无边框。文本节点也算
</div>
<hr>
<!—下面这个div无边框-->
<div>
<h1>这个div有子元素无边框</h1>
</div>
CSS3 结构伪类选择器 详解的更多相关文章
- CSS3中的伪类选择器详解
类选择器和伪类选择器区别 类选择器我们可以随意起名,而伪类选择器是CSS中已经定义好的选择器,不可以随意起名. 伪类选择器以及伪元素 我们把它放到这里 p.aaas{ text-align: le ...
- css3 伪元素和伪类选择器详解
转自脚本之家:http://www.jb51.net/css/213779.html 无论是伪类还是伪元素,都属于CSS选择器的范畴.所以它们的定义可以在CSS标准的选择器章节找到.分别是 CSS2. ...
- CSS3新增(选择器{属性选择器,结构伪类选择器,伪元素选择器})
1.属性选择器 属性选择器,可以根据元素特定的属性来选择元素,这样就不用借助 类 或者 id选择器. E [ att ] 选择具有 att 属性的 E 元素 例如:input [ value ...
- 如何使用CSS3中的结构伪类选择器和伪元素选择器
结构伪类选择器介绍 结构伪类选择器是用来处理一些特殊的效果. 结构伪类选择器属性说明表 属性 描述 E:first-child 匹配E元素的第一个子元素. E:last-child 匹配E元素的最后一 ...
- Atitit.隔行换色 变色 css3 结构性伪类选择器
Atitit.隔行换色 变色 css3 结构性伪类选择器 1.1. css3隔行换色扩展阅读 1 1.2. 结构伪选择器 1 1.3. jQuery 选择器2 1.1. css3隔行换色扩展阅读 原 ...
- CSS3 结构性伪类选择器(2)
CSS3 结构性伪类选择器—first-child “:first-child”选择器表示的是选择父元素的第一个子元素的元素E.简单点理解就是选择元素中的第一个子元素,记住是子元素,而不是后代元素. ...
- CSS3 :nth-child()伪类选择器
CSS3 :nth-child()伪类选择器 CSS3的强大,让人惊叹,人们在惊喜之余,又不得不为其艰难的道路感到可惜:好 的标准只有得到行业浏览器的良好支持才算得上“标准”.CSS3标 准已提出数年 ...
- CSS3 结构性伪类选择器(1)
1.CSS3 结构性伪类选择器—root :root选择器就是匹配元素E所在文档的根元素.在HTML文档中,根元素始终是<html>. “:root”选择器等同于<html>元 ...
- 第49天学习打卡(CSS 层次选择器 结构伪类选择器 属性选择器 美化网页元素 盒子模型)
推荐书籍:码出高效: Java 开发手册 2.2 层次选择器 idea里代码规范是按:ctrl +alt+L快捷键 注释快捷键:ctrl+/ 1.后代选择器:在某个元素的后面 祖爷爷 爷爷 爸爸 你 ...
随机推荐
- cocos2dx day 1
原文:http://www.cocos2d-x.org/programmersguide/2/index.html 一.Basic Concepts 1.director 2.scene 2.1 sc ...
- 线程,yield让出cpu调度
public class Yield01 extends Thread { public static void main(String[] args) { new Yield01().start() ...
- 一次性插入多条sql语句的几种方法
第一种:通过 insert select语句向表中添加数据 从现有表里面把数据插入到另外一张新表去前提必须先有test_2表的存在,并且test_2表中的列的数据类型必须和test表里面列的数据类型一 ...
- nginx日志分割脚本
[root@localhost nginx]# cat logs/nginx.pid 5118[root@localhost nginx]# kill -QUIT 5118-QUIT : 关闭进程-H ...
- 基于mini2440的uboot移植(一)
一.移植环境 虚拟机:ubuntu12.04 uboot源码:u-boot-2008.10.tar.bz2 交叉编译:arm-linux-gcc-4.4.3 简单的记录下编译uboot的过程,要想具体 ...
- Spark Streaming源码解读之Driver中ReceiverTracker架构设计以具体实现彻底研究
本期内容 : ReceiverTracker的架构设计 消息循环系统 ReceiverTracker具体实现 一. ReceiverTracker的架构设计 1. ReceiverTracker可以以 ...
- Hash函数及其应用
本文部分内容摘自网络,参考资料链接会在文后给出,在此感谢原作者的分享. 计算理论中,没有Hash函数的说法,只有单向函数的说法.所谓的单向函数,是一个复杂的定义,大家可以去看计算理论或者密码学方面的数 ...
- [转]:Delphi中Format的字符串格式化使用说明
一.Format函数的用法 Format是一个很常用,却又似乎很烦的方法,本人试图对这个方法的帮助进行一些翻译,让它有一个完整的概貌,以供大家查询之用: 首先看它的声明: function Forma ...
- 使用Birt开发报表
间隔一段时间未使用Birt开发报表后,本文章记录Birt开发报表的常遇到的开发问题及解决措施,方便自己和园内其他朋友学习. 一.Birt连接数据库配置 1.连接DB2数据库: 1.1.birt的数据连 ...
- Spring pom配置详解
转载至http://blog.csdn.net/ithomer/article/details/9332071# 原博主注释的很详细 <project xmlns="http://ma ...