本文发布于 2023-02-21, 最后更新于 1281 天前,其中的信息可能已经有所发展或是发生改变。
文章摘要
【前端】打卡挑战 Day 1 CSS 选择器有哪些?优先级分别是什么? - 编程导航 (code-nav.cn) 选择器 CSS主要有五大基本选择器 元素选择器:用于选择指定html元素 类选择器:用于选择指定了class的html元素 id选择器:用于选择指定了id的html元素 伪类选择器:用于选择匹配特殊状态的html选择器,比如悬浮态hover,点击后的链接active,元素前before…
【前端】打卡挑战 Day 1 CSS 选择器有哪些?优先级分别是什么? - 编程导航 (code-nav.cn) 选择器 CSS主要有五大基本选择器 元素选择器:用于选择指定html元素 类选择器:用于选择指定了class的html元素 id选择器:用于选择指定了id的html元素 伪类选择器:用于选择匹配特殊状态的html选择器,比如悬浮态hover,点击后的链接active,元素前before,元素后after 通用选择器:用于选择所有元素 语法 有了基本选择器,CSS可以通过语法来组合基本选择器,从而进一步指定要选择的元素 div button 空格间隔开的元素表示两者为父子级关系,其中前者为后者的父级,不一定要是直接后代,也可以是祖孙或者更高层级的父级。 div p * button div button 符号间隔开的元素表示两者为直接父子级关系 div * button div,p 逗号间隔开的元素表示两者为并列选择关系,之后的样式对两者都有效 * div /div * p /p p+span 加号间隔开的元素表示两者为相邻的同级元素 div * p * span p~span 波浪线间隔开的元素表示两者为同级元素 div * p button * span 示例 .button #submit 表示选择button类中id为submit的元素 element class="button" … element id="primary" .button #submit,.button #cancel 表示选择button类中id为submit的元素,同时选择button类中id为cancel的元素 element class="button" … element id="primary" 或 element class="button" … element id="cancel" div[*attribute*] 当使用vue的style scope限定组件样式时可以看到html中生成的都是类似于 element[data-hash]的样式选择器 这里其实就用到了 [attribute] 选择器 .card:before .card:after .card:hover 等伪类选择器 优先级 选择器 备注 !important 慎用,可能造成样式混乱 内联样式 直接写在html的style属性里的样式 id选择器 #id 类和伪类选择器/属性选择器 .class :hover element[attribute] 元素选择器 div 通配符、子选择器、相邻选择器 *、 、+ 继承的样式 参考 CSS选择器 (biancheng.net) CSS 参考手册 | 菜鸟教程 (runoob.com)选择器
CSS主要有五大基本选择器
- 元素选择器:用于选择指定html元素
- 类选择器:用于选择指定了class的html元素
- id选择器:用于选择指定了id的html元素
- 伪类选择器:用于选择匹配特殊状态的html选择器,比如悬浮态hover,点击后的链接active,元素前before,元素后after
- 通用选择器:用于选择所有元素
语法
有了基本选择器,CSS可以通过语法来组合基本选择器,从而进一步指定要选择的元素
div button空格间隔开的元素表示两者为父子级关系,其中前者为后者的父级,不一定要是直接后代,也可以是祖孙或者更高层级的父级。
text
<div>
<p>
*<button>
div>button> 符号间隔开的元素表示两者为直接父子级关系
text
<div>
*<button>
div,p逗号间隔开的元素表示两者为并列选择关系,之后的样式对两者都有效
text
*<div>
</div>
*<p>
</p>
p+span加号间隔开的元素表示两者为相邻的同级元素
text
<div>
*<p>
*<span>
p~span波浪线间隔开的元素表示两者为同级元素
text
<div>
*<p>
<button>
*<span>
示例
.button #submit表示选择button类中id为submit的元素
text
<element class="button">
…
<element id="primary">
.button #submit,.button #cancel表示选择button类中id为submit的元素,同时选择button类中id为cancel的元素
text
<element class="button">
…
<element id="primary">
text
或
text
<element class="button">
…
<element id="cancel">
div[*attribute*]当使用vue的style scope限定组件样式时可以看到html中生成的都是类似于 element[data-hash]的样式选择器 这里其实就用到了 [attribute] 选择器.card:before .card:after .card:hover等伪类选择器
优先级
| 选择器 | 备注 |
|---|---|
| !important | 慎用,可能造成样式混乱 |
| 内联样式 | 直接写在html的style属性里的样式 |
| id选择器 | #id |
| 类和伪类选择器/属性选择器 | .class :hover element[attribute] |
| 元素选择器 | div |
| 通配符、子选择器、相邻选择器 | *、>、+ |
| 继承的样式 |
参考
本文采用 CC BY-NC-SA 4.0 协议进行授权,如无注明均为原创,转载请注明出处。
标题:[星球打卡] CSS 选择器有哪些?优先级分别是什么?作者:九仞之行链接:http://dev.styunlen.cn/archives/post-1618.html

还没有评论呢 ~ 快来抢沙发吧 🛋️