CSS选择器

本文详细介绍了CSS中的各种选择器,包括组合选择器(分组、后代、子代、相邻兄弟、普通兄弟)、属性选择器、伪类选择器和伪元素选择器。通过这些选择器,可以精确地定位和样式化网页元素。同时,文章还提及了选择器的优先级规则以及在实际应用中的注意事项,如伪类顺序等。
摘要由CSDN通过智能技术生成

一:组合选择器

选择器的作用:方便找到HTML中的元素
1:分组选择器:把多个相同配置的CSS放在同一个组里面,简化CSS书写,中间是 , 号

#id,.class{
	color:skyblue;
}

2:后代选择器:某一个标签下面的全部子标签(子子孙孙)都能被响应,中间加空格
例:

/* div标签下的所有p标签,子子孙孙都会被响应*/
div p{
	color:skyblue;
}

3:子代选择器:某一个标签下的子标签,中间是 > 号

/*div下面子标签为p标签的元素*/
div>p{
	color:skyblue;
}

4:相邻兄弟选择器:某一个选择器后面相邻的第一个兄弟,必须要挨着,中间是 + 号

div+p{
	color:skyblue;
}

5:普通兄弟选择器:某一个选择器后面的所以兄弟,中间是 ~ 号

/*和div同级的所有p标签*/
div~p{
	color:skyblue;
}

二:属性选择器

/*   选择a标签中带有 target 属性的所有元素*/
a[target] {
	color:skyblue;
 } 
/* 选择a标签中带有 target = _blank 所有元素*/
a[target=_blank] { 
	color:skyblue;
}  
/* 选择 href 属性值中包含 "cn" 子串的每个 <a> 元素*/
a[href = "cn" ] {
	color:skyblue;
 }
 /* 选择 href 属性值中以 "https" 开头的每个 <a> 元素*/
 a[href ^= "https" ] {
	color:skyblue;
 } 
 /* 选择 href 属性值中以 ".com" 结尾的每个 <a> 元素*/
 a[href $= ".com" ] { 
	color:skyblue;
} 

三:伪类选择器

(1)状态伪类:前面是一个冒号 “:”

/* 设置超链接文字显示在网页中的特效 */
a:link{
	color:skyblue;
}
 /* 浏览过这个链接后页面显示不一样的文字效果*/
 a:visited{
	color:blue;
}
 /* 鼠标放置上去后添加的特效 */
 a:hover{
	color:orange;
}
/*按下链接显示的效果*/
a:active{
	color:red;
}
  • 在CSS定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的
  • 在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的

(2)结构伪类:一般应用在表单上面

  /*  给第一个div添加特效 */
  div:first-child {
	color:skyblue;
}
 /* 给最后一个div添加特效 */
 div:last-child{
	color:skyblue;
}
 /*从第一个开始数,为第n个div添加特效 */
 div:nth-child(n) {
	color:skyblue;
}
/*从最后一个开始数,为第n个div添加特效 */
div:nth-last-child(n){
	color:skyblue;
}
/*为div中的 奇数行 添加特效  */
div:nth-child(even){
	color:skyblue;
}
/*为div中的 偶数行  添加特效  */
div:nth-child(odd){
	color:skyblue;
}
/* 限定元素,限定的元素中相同的标签不能超过一个,否则不显示特效。*/
/*当只有一个p标签使这个css样式才生效*/
p:only-of-type: {
	color:skyblue;
}
/* 对div下的第二个p标签元素进行设定*/
div > p :nth-of-type(2){
	color:skyblue;
}
/* 对div下的倒数第二个p标签元素进行设定*/
div > p :nth-last-of-type(2){
	color:skyblue;
}
/*   对可用元素进行设定,一般用于表单上*/
input:enabled{
	background-color:skyblue;
}
/*对不可用元素进行设定,一般用于表单上*/
/* 对添加了 disabled 属性的 input框进行设置样式  */
input:disabled{
	background-color:yellow;
} 
/* 对表单中的必选元素进行设置,配合requried使用 */
input:requried {
	background-color:skyblue;
}  
/*对表单中的可选元素进行设置*/
input:optional {
	background-color:skyblue;
} 
/*对表单中要强制输入的文本框进行设置,配合requried 使用*/
input:valid {
	background-color:skyblue;
}
/*对表单中不强制输入的文本框进行设置 */
input:invalid {
	background-color:skyblue;
}

四:伪元素选择器 前面是两个冒号“::”

定义:伪元素也是标签,是浏览器自动帮我们添加进网页的,无需手动写
写法:标签名或类名或id名后面加 ::

例:给这段文字内容的第一个字添加颜色和改变字体大小

.p1::first-letter {
	color: red;
	font-size: 30px ;
}

1:p::first-letter /* 向文本的第一个字母添加特殊样式
2:p::first-line /* 向文本的首行添加特殊样式
3:p::before /* 在元素之前添加内容 /
4:p::after / 在元素之前添加内容 /
5:::selection { color:red;} /
选择文本时 改变选中文本的颜色 */

选择器的优先级:

优先级从低----> 高:
浏览器自定义–>通配符选择器–>标签选择器–>类选择器–>属性选择器–>伪类选择器–>ID选择器–>内联样式–>!important
!important /
在选择器后面加上 !important 那么这个选择器的优先级就是最高的。
*

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值