逆战班-CSS3新增选择器

CSS新增选择器主要分为属性选择器、关系选择器、结构伪类选择器、UI伪类选择器

  • 属性选择器
    属性选择器可以根据网页标记的属性及属性值来选择标记。属性选择器一般是一个记后紧跟中括号[],中括号内部是属性或者属性表达式。
    例如:E[class=main]{font-size:12px}

常见的三种属性选择器:

  • E[att^=value]

    例: div[id^=new]
    例子说明:匹配一个div,它定义了id属性,id的值为new开头的任意字符串

  • E[att=value]

    例: div[id$=new]
    例子说明:匹配一个div,它定义了id属性,id的值为new结尾的任意字符串

  • E[att*=value]

    例: div[id*=new]
    例子说明:匹配一个div,它定义了id属性,id的值任意位置包含了new的任意字符串

- 关系选择器
关系选择器分子选择器、相邻兄弟选择器、通用选择器
放入代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			*{
				padding: 0;
				margin: 0;
			}
			div{
				height: 100px;
				width: 200px;
				border: 1px solid#000;
			}
			h2>span{
				color: green;
			}
			h2+p{
				color: red;
			}
			h2~p{
				color: yellow;
			}
		</style>
	</head>
	<body>
		<div id="new">
			<h2>
				<span>遇见彩虹</span>
				<span>吃定彩虹</span>
			</h2>
			<p>
				<span>首页</span>
				<span>产品展示</span>
				<span>联系我们</span>
			</p>
			<p>一切皆有可能!</p>
		</div>
		<div></div>
	</body>
</html>

  • 子选择器

    例:h2>span
    说明:选择h2下的span标签

h2>span{
				color: green;
			}

在这里插入图片描述

  • 相邻兄弟选择器

    例:h2+p
    说明:选择h2后的第一个兄弟标签p标签

h2+p{
				color: red;
			}

在这里插入图片描述

  • 通用选择器

    例:h2~p
    说明:选择h2的所有p兄弟标签

h2~p{
				color: yellow;
			}

在这里插入图片描述
结构伪类选择器
放入代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			*{
				padding: 0;
				margin: 0;
			}
			div{
				height: 100px;
				width: 200px;
				border: 1px solid#000;
			}
			
		</style>
	</head>
	<body>
		<div id="new">
			<h2>
				<span>遇见彩虹</span>
				<span>吃定彩虹</span>
			</h2>
			<p class="p1">
				<span>首页</span>
				<i>产品展示</i>
				<span>联系我们</span>
				<span>关于我们</span>
			</p>
			<p class="p2">一切皆有可能!</p>
		</div>
		<div></div>
		<div class="b3">
			<h2>广告</h2>
		</div>
	</body>
</html>

  • :root

    选择匹配文档的根元素

:root{
				color: #f00;
			}

在这里插入图片描述

  • E:nth-child(n)

    选择所有在其父元素中的第n个位置的匹配E的子元素

div h2 span:nth-child(2){
				color: green;
			}

在这里插入图片描述

  • E:nth-last-child(n)

    选择所有在其父元素中倒数第n个位置的匹配E的子元素

div p i:nth-last-child(2){
				color: green;
			}

在这里插入图片描述

  • E:nth-of-type(n)

    选择所有在其父元素中同类型第n个位置的匹配E的子元素

div .p1 span:nth-of-type(2){
				color: green;
			}

在这里插入图片描述

  • E:nth-last-of-type(n)

    选择所有在其父元素中同类型倒数第n个位置的匹配E的子元素

div .p1 span:nth-last-of-type(1){
				color: green;
			}

在这里插入图片描述

  • E:last-child

    选择位于其父元素中最后一个位置,且匹配E的子元素

div .p1 span:last-child{
				color: green;
			}

在这里插入图片描述

  • E:first-child

    选择位于其父元素中第一个位置,且匹配E的子元素

div .p1 span:first-child{
				color: green;
			}

在这里插入图片描述

  • E:fiest-of-type

    选择在其父元素中匹配E的第一个同类型子元素

div .p1 span:first-of-type{
				color: green;
			}

在这里插入图片描述

  • E:last-of-type

    选择在其父元素中匹配E的最后一个同类型子元素

div .p1 i:last-of-type{
				color: green;
			}

在这里插入图片描述

  • E:only-child

    选择在其父元素中只包含一个子元素,且该子元素匹配E

.b3 h2:only-child{
				color: #f00;
			}

在这里插入图片描述

  • E:only-of-type

    选择在其父元素中只包含一个同类型子元素,且该子元素匹配E

#new h2:only-of-type{
				color: #f00;
			}

在这里插入图片描述

  • E:empty

    选择匹配E的元素,且该元素不包含子元素

div:empty{
				border: 2px solid#f00;
			}

在这里插入图片描述
- UI伪类选择器
放入代码:

<!DOCTYPE html>
<html>

	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			* {
				padding: 0;
				margin: 0;
			}
			
			
		</style>
	</head>

	<body>
		<input type="text" />
		<input type="text" disabled="disabled"/>
	</body>

</html>
  • E:enabled

    选择匹配E的所有可用UI元素

input[type="text"]:enabled {
				cursor: not-allowed;
				background: #eee;
				border-color: #ddd;
			}

在这里插入图片描述

  • E:disabled

    选择匹配E的所有不可用UI元素

input[type="text"]:disabled {
				cursor: not-allowed;
				background: #eee;
				border-color: #ddd;
			}

在这里插入图片描述

  • E:checked

    选择匹配E的所有可用UI元素

input[type="text"]:checked {
				cursor: not-allowed;
				background: #eee;
				border-color: #ddd;
			}

在这里插入图片描述

  • E:read-write

    选择匹配可读及可写的元素

input[type="text"]:read-write {
				cursor: not-allowed;
				background: #eee;
				border-color: #ddd;
			}

在这里插入图片描述

  • E:read-only

    选择匹配设置"readonly" (只读)属性的元素

input[type="text"]:read-only{
				cursor: not-allowed;
				background: #eee;
				border-color: #ddd;
			}
			
		<input type="text" readonly="readonly"/>
		<input type="text" disabled="disabled"/>

在这里插入图片描述

  • E:.selection

    匹配元素中被用户选中或处于高亮状态的部分

input[type="text"]:selection{
				cursor: not-allowed;
				background: #eee;
				border-color: #ddd;
			}

在这里插入图片描述

  • E:out-of-range

    用于标签的值在指定区间之外时显示的样式

input:out-of-range{
				border: 1px solid#f00;
			}
		<input type="number" max="20" min="1"/>
		<input type="email" disabled="disabled"/>

在这里插入图片描述

  • E:in-range

    用于标签的值在指定区间之内时显示的样式

  • E:optional

    用于匹配可选的输入元素

input[type="text"]:optional{
				background-color: #f00;
			}
			
		<input type="text"/>
		<input type="email" disabled="disabled"/>

在这里插入图片描述

  • E:required

    用于匹配设置了"required" 属性的元素

input[type="text"]:required{
				cursor: not-allowed;
				background: #f00;
				border-color: #ddd;
			}
			
<input type="text" readonly="readonly" required="required"/>
<input type="text" disabled="disabled"/>

在这里插入图片描述

  • E:valid E:invalid

    用于匹配输入值为合法、非法的元素

- 动态伪类选择器

  • E:link

    链接伪类选择器
    选择匹配的E元素,而且匹配元素被定义了超链接并未被访问过。常用于链接描点上

  • E:visited

    链接伪类选择器
    选择匹配的E元素,而且匹配元素被定义了超链接并已被访问过。常用于链接描点上

  • E:active

    用户行为选择器
    选择匹配的E元素,且匹配元素被激活。常用于链接描点和按钮上

  • E:hover

    用户行为选择器
    选择匹配的E元素,且用户鼠标停留在元素E上。IE6及以下浏览器仅支持a:hover

  • E:focus

    用户行为选择器
    选择匹配的E元素,而且匹配元素获取焦点

- 目标伪类选择器

  • E:target

    选择匹配E的所有元素,且匹配元素被相关URL指向 (如:锚点链接)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值