当前位置: 首页 > ds >正文

CSS基础巩固-选择

目录

前缀符号(后面会具体介绍)

优先级

同时应用样式到多个类上

属性选择器

伪类

伪元素

关系选择器

后代选择器

子代选择器

邻接兄弟

通用兄弟


注:本文以MDN为基础

添加CSS样式文件

就像创业平台 index.html 里面开头的 <link rel="stylesheet" href=" 样式文件路径 ">

想对一片区域内的元素应用样式

定义类 class

比如 <div class=" "> , <li class=" ">

前缀符号(后面会具体介绍)

.                 类选择器(同一个类可以被多个元素使用,用于标识一组相似的元素)

#                ID选择器(一个页面只能有一个相同的ID)

无前缀        元素选择器

*                通用选择器

[ ]               属性选择器(比如 <div class="not box"> 会被 div[class~="box"] 选中,因为后面的选择器是匹配 class属性 中含有box单词的 div元素

:                伪类选择器

::                伪元素选择器

空格        后代选择器

>                子选择器

+                相邻兄弟选择器

~                通用兄弟选择器

优先级

!important声明 > 内联样式 > #ID > .类 > 元素 > *

同时应用样式到多个类上

逗号分隔

A,B{
}

属性选择器

[属性]                只要含有这个属性就匹配

[属性=“值"]        属性值等于值

[属性~="值"]        属性中包含某个词(空格分隔)

[属性|="值"]        属性以值开头或等于值

[属性^="值"]        属性以值开头

[属性$="值"]        属性值以“值”结尾

[属性*="值"]        属性值包含“值”(和~区别:不一定要空格分隔)

伪类

用于选择处于特定状态的现有元素

/* 状态伪类 */
a:hover { color: red; }           /* 鼠标悬停状态 */
input:focus { border: blue; }     /* 获得焦点状态 */
button:disabled { opacity: 0.5; } /* 禁用状态 *//* 结构伪类 */
li:first-child { font-weight: bold; }  /* 第一个子元素 */
tr:nth-child(even) { background: #f0f0f0; } /* 偶数行 *//* 内容伪类 */
p:empty { display: none; }        /* 空内容元素 */
div:not(.special) { color: black; } /* 排除特定类 */

伪元素

创建和样式化虚拟元素

伪元素并不会修改DOM,只是在渲染层面

/* 内容伪元素 */
.quote::before {content: """;font-size: 2em;color: #ccc;
}.quote::after {content: """;font-size: 2em;color: #ccc;
}/* 选择伪元素 */
p::first-line {font-weight: bold;color: blue;
}p::first-letter {font-size: 2em;float: left;
}/* 占位符伪元素 */
input::placeholder {color: #999;font-style: italic;
}

关系选择器

注意CSS解析是从右到左(在我的创业分析平台index.html 文章里面有样例)

后代选择器

空格

.box p {color: red;
}

子代选择器

子代关系选择器是个大于号(>),只会在选择器选中直接子元素的时候匹配。继承关系上更远的后代则不会匹配。例如,只选中作为<article>的直接子元素的<p>元素:

article > p

邻接兄弟

邻接兄弟选择器(+)用来选中恰好处于另一个在继承关系上同级的元素旁边的物件。例如,选中所有紧随<p>元素之后的<img>元素:

p + img

通用兄弟

如果你想选中一个元素的兄弟元素,即使它们不直接相邻,你还是可以使用通用兄弟关系选择器(~)。要选中所有的<p>元素后任何地方<img>元素,我们会这样做:

p ~ img

http://www.xdnf.cn/news/9847.html

相关文章:

  • 【大模型02】Deepseek使用和prompt工程
  • PH热榜 | 2025-05-29
  • leetcode235.二叉搜索树的最近公共祖先:迭代法利用有序性高效寻根
  • 【音频处理】java流式调用ffmpeg命令
  • 《Python 应用中的蓝绿部署与滚动更新:持续集成中的实践与优化》
  • Java设计模式从基础到实际运用
  • 【redis实战篇】第六天
  • 一根网线连接两台电脑组建局域网
  • 不起火,不爆炸,高速摄像机、数字图像相关DIC技术在动力电池新国标安全性能测试中的应用
  • 代码随想录算法训练营第60期第五十一天打卡
  • R3GAN训练自己的数据集
  • Java中float和double的区别与用法解析
  • 华为OD机试真题——阿里巴巴找黄金宝箱(III)(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • WPF 全局加载界面、多界面实现渐变过渡效果
  • DexWild:野外机器人策略的灵巧人机交互
  • 华为OD机试真题——简单的自动曝光平均像素(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • 如何更好的理解云计算和云原生?
  • JDBC连接数据库精准提炼
  • MongoDB(七) - MongoDB副本集安装与配置
  • Python 中的 if-elif-else 语句与控制流详解:从基础到高级应用
  • 电感专题归纳
  • Unity-QFramework框架学习-MVC、Command、Event、Utility、System、BindableProperty
  • 深入理解 SELinux:通过 Nginx 和 SSH 服务配置实践安全上下文与端口策略
  • 家庭路由器改装,搭建openwrt旁路由以及手机存储服务器,实现外网节点转发、内网穿透、远程存储、接入满血DeepSeek方案
  • LVS+keepalived高可用群集
  • mac笔记本如何快捷键截图后自动复制到粘贴板
  • 首发!PPIO派欧云上线DeepSeek-R1-0528-Qwen3-8B蒸馏模型
  • 【数据结构】图论核心算法解析:深度优先搜索(DFS)的纵深遍历与生成树实战指南​
  • Spring Boot 3.5.0中文文档上线
  • 在 WSL Ubuntu-24.04 上安装 Nacos 2.5.1 并使用 MySQL 数据库