前端学习之CSS

CSS选择器学习笔记

一、基础选择器(FED9示例)
css 复制代码
/* 标签选择器:直接选中所有指定标签 */
div {
    color: rgb(255, 0, 0);
    font-size: 20px; /* 公共样式 */
}

/* 类选择器:通过class属性定位元素 */
.green {
    color: rgb(0, 128, 0); /* 覆盖标签选择器颜色 */
}

/* ID选择器:通过唯一id属性定位元素 */
#black {
    color: rgb(0, 0, 0); /* 最高优先级覆盖 */
}

特性总结:

  • 优先级权重:ID选择器(100) > 类选择器(10) > 标签选择器(1)
  • 应用场景
    • 标签选择器:统一基础样式
    • 类选择器:复用相同样式
    • ID选择器:唯一元素定制样式

二、伪类选择器(FED10示例)
css 复制代码
/* :nth-child() 伪类选择器 */
ul li:nth-child(2n) {  /* 2n表示偶数位置 */
    background-color: rgb(255, 0, 0);
}

核心要点:

  1. 选择器结构:父元素 子元素:伪类
  2. 常用公式:
    • 2n/even:偶数元素
    • 2n+1/odd:奇数元素
    • n+2:第2个开始所有元素
  3. 其他常用伪类:
    • :hover 鼠标悬停
    • :first-child 首个子元素
    • :last-child 最后一个子元素

三、伪元素(FED11示例)
css 复制代码
div::after {  /* 双冒号语法 */
    content: "";          /* 必须属性 */
    width: 20px;
    height: 20px;
    background-color: rgb(255, 0, 0);
    display: block;       /* 转换为块级元素 */
}

关键知识:

  1. 伪元素类型:
    • ::before 在内容前插入
    • ::after 在内容后插入(本例使用)
  2. 必备属性:
    • content:定义插入内容(空字符串也可)
    • display:控制渲染方式(block/inline-block)
  3. 与伪类的区别:
    • 伪类:选择已有元素的状态
    • 伪元素:创建虚拟元素并添加样式

选择器优先级计算模型

设标签选择器权重为 a,类选择器为 b,ID选择器为 c,则优先级为: $$ P = c \times 100 + b \times 10 + a $$ 比较规则:高位优先(如ID选择器权重始终高于类选择器)

示例验证:
div#black 权重 = 1 \\times 100 + 0 \\times 10 + 1 = 101
.green 权重 = 0 \\times 100 + 1 \\times 10 + 0 = 10

相关推荐
JarvanMo12 分钟前
10 个能帮你节省大量开发时间的低估 Flutter 组件
前端
去伪存真15 分钟前
公司前端项目ESLint规则集统一化
前端
dxnb2215 分钟前
Datawhale25年10月组队学习:math for AI+Task3线性代数(下)
人工智能·学习·线性代数
Century_Dragon16 分钟前
【世纪龙科技】新能源汽车动力电池拆装与检测虚拟实训软件介绍
学习
鹏多多19 分钟前
使用imaskjs实现js表单输入卡号/日期/货币等掩码的教程
前端·javascript·vue.js
w2vmany20 分钟前
postmessage xss初步学习
前端·学习·xss
立志成为大牛的小牛1 小时前
数据结构——二十五、邻接矩阵(王道408)
开发语言·数据结构·c++·学习·程序人生
wdfk_prog1 小时前
[Linux]学习笔记系列 -- [kernel][irq]softirq
linux·笔记·学习
71-31 小时前
C语言——关机小程序(有system()和strcmp()函数的知识点)
c语言·笔记·学习
小张成长计划..1 小时前
前端6:CSS3 2D转换,CSS3动画,CSS3 3D转换
前端·3d·css3