CSS选择器总结

元素选择器:

作用:通过元素选择器可以选择页面中的所有元素
语法:标签名{ }

如下:选中所有的P标签。

p{
		color:red;
		font-size:40px;
}	

ID选择器:

作用:通过元素ID属性值选中唯一的一个元素。
语法:#id属性值{ }

如下:选中ID为p1的元素

#p1{       /*选中ID为p1的元素*/
		color:red;
		font-size:40px;
	}	

类选择器:

作用:痛过元素的class属性值选中一组元素(class属性和ID属性类似,只是class属性可以重复,不同的元素可以拥有相同的属性值;一个元素也可以有多个class属性,用空格隔开。)
语法:.class属性值{ }

选中class属性为p2的元素

			.p2{       
				color:red;
				font-size:40px;
			}

选择器分组(并集选择器):

作用:通过选择器分组可以同时选中多个选择器对应的元素。
语法:选择器1,选择器2,选择器N{ }

选中ID为p1,class属性值为p2,以及所有的h1元素。

			#p1,.p2,h1{       
				color:red;
				font-size:40px;
			}

通配选择器:

作用:可以用来选中页面中所有的元素
语法:*{ }

如下:选中所有元素

			*{       
				color:red;
				font-size:40px;
			}

复合选择器(交集选择器)

作用:可以选中同时满足多个选择器的元素。
语法:选择器1选择器2选择器N{ }

选中一个class属性值是p2且是span的元素

			span.p2{       
				color:red;
				font-size:40px;
			}

后代元素选择器:

作用:选中指定元素的指定后代元素
语法:祖先元素 后代元素{ };两元素之间用一个空格隔开

扩展:祖先元素上的样式,会被他的后代元素所继承,利用继承可以将一些基本样式设置给祖先元素,这样所有的后代元素就会自动继承这些样式。但并不是所有的样式都会被子元素继承,比如:背景相关的元素不会被继承。

选中div中的span元素

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>CSS常见选择器</title>
		<style	type="text/css">
			div  span{       
				color:red;
				font-size:40px;
			}
		</style>
	</head/>
	<body>
		<div id="d1">
			<p>
				<span>我是div中的p元素中的子元素</span>
			</p>
			<span>
				我是div中的子元素
				<span>我是孙子元素</span>
			</span>
			<span>我是子元素</span>
		</div>
	</body>
</html>

效果如下:
在这里插入图片描述
也可以多重选中,比如:

选中ID为d1中的p元素中的span元素

			#d1 p span{       
				color:red;
				font-size:40px;
			}

子元素选择器:

作用:选中指定父元素的指定子元素
语法:父元素 > 子元素

选中div的子元素中的span(只选子元素,孙子元素里的span元素不选,这是与后代选择器的区别。)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>CSS常见选择器</title>
		<style	type="text/css">
			div > span{       
				color:red;
				font-size:40px;
			}
		</style>
	</head/>
	<body>
		<div id="d1">
			<p>
				<span>我是div中的p元素中的子元素</span>
			</p>
			<span>
				我是div中的子元素
				<span>span的子元素</span>
			</span>
			<span>我是子元素</span>
		</div>
	</body>
</html>

效果如下:
在这里插入图片描述

伪类选择器:

伪类专门用来表示元素的一种特殊状态,比如超链接的伪类:访问过的超链接,普通的超链接。下面以超链接的伪类进行举例。
超链接的四种伪类:

正常连接访问过的连接鼠标滑过的连接正在点击的连接
a:linka : visited(只能定义字体的颜色)a : hovera : active

其中 : hover和 : active也可以用于其他元素的设置。
但注意:再IE6中不支持对超链接以外的元素设置 : hover和 : active

为没访问过的连接设置一个颜色为绿色

a:link{       
				color:green;
			}

为p标签中选中的内容设置样式(用::selection伪类),将选中的文字背景色设置为红色。

			p::selection{
				background-color:red;
			}

注意:::selection这个伪类再火狐浏览器中需要采用另外一种方式编写。
p::-moz-selection
如果需要兼容得把两种方式都写上。

否定伪类:
作用:可以从已选的元素中剔除出某些元素
语法:  : not(选择器)

为所有的P元素设置一个背景颜色为黄色,除了class值为hello的

p:not(.heoll){
	backfroun-color:yellow;
}

伪元素:

作用:使用伪元素来表示元素的一些特殊位置。

属性描述
:first-letter向文本的第一个字母添加特殊样式。
:first-line向文本的首行添加特殊样式。
:before在元素之前添加内容
:after在元素之后添加内容。

属性 描述
:first-letter 向文本的第一个字母添加特殊样式。
:first-line 向文本的首行添加特殊样式。
:before 在元素之前添加内容。
:after 在元素之后添加内容。

为p标签中第一个字符设置一个特殊的样式

P:first-letter{
				color:red;
				font-size:40px;
			}

属性选择器:

作用:可以根据元素中的属性或者属性值来选取指定的元素。
语法:下表是常见的用法

写法描述
[属性名]选取含有指定属性的元素
[属性名=“属性值”]选取含有指定属性值的元素
[属性名]^=“属性值”选取属性值以指定内容开头的元素
[属性名]$=“属性值”选取属性值以指定内容结尾的元素
[属性名]*=“属性值”选取属性值包含指定内容的元素

为title属性值是hello的元素设置一个背景颜色为黄色

P[title="hello"]{
	background-color:yellow;
}

子元素选择器(子元素的伪类):
:first-child可以选中第一个子元素
:last-child可以选中最后一个子元素。
:nth-child(n)可以选中第n个子元素。括号里也可以填even或者odd。分别表示选中偶数位置的子元素和选中奇数位置的子元素。
:first-of-type表示在type类型标签中的第一个元素。last-of-typenth-of-type()以此类推

为第一个p标签设置一个背景颜色为黄色

P:first-child{
	background-color:yellow;
}

兄弟元素选择器:

选中后一个兄弟:
作用:可以选中一个元素后紧挨着的指定兄弟元素
语法:前一个 + 后一个

选中后边的所有兄弟元素:
语法:前一个 ~ 后一个

为span后的一个p元素设置一个背景颜色为黄色

span + p{
	background-color:yellow;
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
CSS选择器中的`:children`伪类选择器是不存在的。在CSS中,有一些伪类选择器可以用来选择元素的不同状态或位置,但没有专门用于选择子元素的伪类选择器。相反,可以使用其他伪类选择器,如`:first-child`、`:last-child`、`:nth-child()`或`:nth-of-type()`来选择父元素中的特定子元素。例如,`:first-child`选择父元素中的第一个子元素,`:last-child`选择父元素中的最后一个子元素,`:nth-child(n)`选择父元素中的第n个子元素,而`:nth-of-type(n)`选择父元素中指定类型的第n个子元素。这些伪类选择器可以帮助我们选择和样式化父元素的不同子元素。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [css选择器总结](https://blog.csdn.net/laisy334514/article/details/119060318)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Css选择器](https://blog.csdn.net/baizeyv/article/details/125935137)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逍遥自在”

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值