CSS 选择器的常见用法

我们通过代码来学习CSS选择器的使用

html 复制代码
<div class="font32">我是⼀个div, class为font32</div>
<div class="font32">我是⼀个div, class为font32</div>
<div><a href="#">我是⼀个div</a></div>
<ul>
 <li>aaa</li>
 <li>bbb</li>
 <li><a href="#">ccc</a></li>
</ul>
<ol>
 <li>1111</li>
 <li>2222</li>
 <li>3333</li>
</ol>
<button id="submit">提交</button>

1. 标签选择器

直接针对HTML的标签进行。格式:

html 复制代码
/* 选择所有的a标签, 设置颜⾊为红⾊ */
a {
 color: red;
}

/* 选择所有的div标签, 设置颜⾊为绿⾊ */
div {
 color: green;
}

2. class选择器

使用.className的形式来选择带有特定类名的元素。例如

html 复制代码
/* 选择class为font32的元素, 设置字体⼤⼩为32px */
.font32 {
 font-size: 32px;
}

一个类可以被多个标签使用,一个标签也可以使用多个类(多个类名要使用空格分割,这种做法可以让代码更好复用)

html 复制代码
/*一个类被多个标签使用*/
<p class="font32">这是一个使用 .font32 类的段落。</p>
<div class="font32">这是一个使用 .font32 类的 div。</div>


/*一个标签使用多个类*/
<p class="font32 red-text">这是一个使用 .font32 和 .red-text 类的段落。</p>

3. id选择器

使用#idName的形式来选择具有特定ID的元素。例如:

html 复制代码
/* 选择id为submit的元素, 设置颜⾊为红⾊ */
#submit {
 color: red;
}

id是唯一的,不能被多个标签使用(是和类选择器最大的区别)

4. 复合选择器

复合选择器是将多个选择器组合在一起使用,以选择特定的元素集合。这种选择器的组合可以提高选择元素的精确度,并且可以创建更具体的样式规则。

html 复制代码
/*只设置 ul标签下的 li标签下的 a标签, 颜⾊为红⾊*/
ul li a {
 color: blue;
}

1.以上三个标签选择器ul,li,a中的任意,都可以替换成类选择器,或者id选择器,可以是任意选择器的组合,也可以是任意数量选择器的组合。

2.不一定是相邻的标签,也可以是"孙子"标签。

3.如果需要选择多种标签,可以使用,分割,如p,div{ }表示同时选中p标签和div标签。逗号前后可以是以上任意选择器,也可以是选择器的组合

5. 通配符选择器

通配符选择器是CSS选择器中最简单且最常用的一种选择器,用来匹配文档中的所有元素。通配符选择器使用一个 * 表示,可以选择页面内的所有元素,并将样式应用于这些元素。

html 复制代码
/* 设置⻚⾯所有元素, 颜⾊为红⾊*/
* {
 color: red;
}
相关推荐
WindrunnerMax几秒前
从零实现富文本编辑器#13-React非编辑节点的内容渲染
前端·架构·github
四千岁1 分钟前
Ollama+OpenWebUI 最佳组合:本地大模型可视化交互方案
前端·javascript·后端
写不来代码的草莓熊3 分钟前
el-date-picker ,自定义输入数字自动转换显示yyyy-mm-dd HH:mm:ss格式
前端·javascript·vue.js
ssshooter3 分钟前
Tauri 应用苹果签名踩坑实录
前端·架构·全栈
DeSheng7 分钟前
npm 从入门到精通(二):再理解,彻底搞懂 package.json、node_modules 和 package-lock
前端
用户69371750013847 分钟前
XChat 为什么选择 Rust 语言开发
android·前端·ios
局i9 分钟前
从零搭建 Vite + React 项目:从环境准备到干净项目的完整指南
前端·react.js·前端框架
Wect9 分钟前
LeetCode 149. 直线上最多的点数:题解深度剖析
前端·算法·typescript
Wect10 分钟前
JS手撕:手写Koa中间件与Promise核心特性
前端·javascript·面试
小蜜蜂dry10 分钟前
nestjs实战 - 拦截器,统一处理接口请求与响应结果
前端·后端·nestjs