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

前端CSS样式详细笔记

文章目录一、CSS基础概念1. 什么是CSS2. CSS三大核心特性3. CSS基本语法结构二、CSS引入方式三、CSS选择器详解1. 基础选择器2. 组合选择器3. 属性选择器4. 伪类与伪元素四、选择器优先级规则1. 优先级计算方法2. 优先级实战示例3. 优先级注意事项五、CSS盒模型1. 盒模型组成2. 盒模型计算3. 外边距折叠六、CSS布局技术1. 浮动布局2. 定位布局3. Flexbox布局4. Grid布局七、CSS样式属性1. 文本样式2. 盒子样式3. 背景样式八、CSS高级特性1. 媒体查询响应式设计2. CSS动画与过渡3. CSS变量九、CSS最佳实践1. 代码规范2. 组织CSS技巧3. 调试CSS问题十、学习建议一、CSS基础概念1. 什么是CSSCSSCascading Style Sheets层叠样式表是一种用于描述HTML或XML文档外观的样式表语言核心作用控制网页元素的布局、颜色、字体、间距等视觉表现实现内容与样式分离2. CSS三大核心特性层叠性多个样式规则可以叠加应用根据优先级决定最终效果继承性子元素可以继承父元素的某些样式如字体、颜色等优先级当样式冲突时根据选择器权重决定应用哪个样式3. CSS基本语法结构/* 选择器 { 声明块 } */h1{color:#333;/* 属性: 值; */font-size:24px;/* 每个声明以分号结尾 */}选择器指定应用样式的HTML元素如h1、.class、#id声明块包含在大括号{}内的样式规则声明由属性和值组成的键值对格式为property: value;二、CSS引入方式引入方式语法示例优点缺点适用场景行内样式div stylecolor: red;优先级最高针对性强无法复用耦合度高临时调整单个元素内部样式表stylediv { color: red; }/style与HTML同文件便于调试文件臃肿不利于复用小型页面或临时测试外部样式表link relstylesheet hrefstyle.css样式与结构分离复用性强需额外加载文件项目开发首选import导入import url(another.css);可组织样式文件影响性能不推荐使用特定场景优先级规则行内样式 内部样式表 外部样式表后定义的覆盖先定义的三、CSS选择器详解1. 基础选择器元素选择器p { color: #333; }- 选择所有p元素优先级最低1分类选择器.text-red { color: red; }- 选择所有classtext-red的元素优先级10分ID选择器#header { background: #f5f5f5; }- 选择唯一idheader的元素优先级100分通配选择器* { margin: 0; padding: 0; }- 选择所有元素优先级最低2. 组合选择器后代选择器div p { line-height: 1.5; }- 选择div内所有p元素空格分隔子元素选择器ul li { list-style: none; }- 仅选择直接子元素分隔相邻兄弟选择器h1 p { margin-top: 0; }- 选择紧接在h1后的p元素分隔通用兄弟选择器h1 ~ p { color: gray; }- 选择h1之后的所有p元素~分隔并集选择器h1, h2, .heading { font-family: Arial; }- 选择多个元素,分隔3. 属性选择器存在属性[disabled] { opacity: 0.5; }精确匹配[typetext] { border: 1px solid #ccc; }包含特定值[class~active] { background: #007bff; }属性值开头匹配[href^https] { color: green; }属性值结尾匹配[src$.jpg] { border-radius: 4px; }4. 伪类与伪元素伪类匹配元素状态以:开头a:hover { color: red; }- 鼠标悬停状态li:nth-child(odd) { background: #f9f9f9; }- 选择奇数子元素input:focus { outline: 2px solid blue; }- 获得焦点状态伪元素创建虚拟元素以::开头.text::before { content: ★; }- 在元素前添加内容.text::after { content: ★; }- 在元素后添加内容四、选择器优先级规则1. 优先级计算方法优先级从低到高元素选择器(个) 类/伪类/属性选择器(十) ID选择器(百) 行内样式(千) !important(最高)计算方式按百、十、个计数如#main .container p 1(ID) 1(类) 1(元素) 111权重相同当两个选择器的权重完全相同时在 CSS 文件中后出现或后加载的那条规则会覆盖先出现的规则。等级包含的选择器类型分值 (权重)备注A (百位)ID 选择器(#id)100权重极高通常不建议堆叠B (十位)类选择器(.class)、属性选择器([typetext])、伪类(:hover)10属性和类是平级的C (个位)标签选择器(div,p)、伪元素(::before)1权重最低2. 优先级实战示例.text p{color:red;}/* 1(类)1(元素) 11 */div p{color:blue;}/* 2(元素) 2 */#main p{color:green;}/* 1(ID)1(元素) 101 */最终效果.text p文字红色优先级11 2同优先级规则后声明的样式覆盖先声明的3. 优先级注意事项避免滥用!important会破坏样式层级难以维护ID选择器慎用优先级过高后期难以覆盖且ID全局唯一无法复用行内样式尽量少用不利于样式复用和维护样式合并CSS 的样式合并是指浏览器将多条匹配规则中不冲突的属性进行叠加互补而对冲突的属性则依据权重和源码顺序进行覆盖最终计算出元素唯一应用样式的过程。CSS 的处理逻辑其实是“属性级”的而不是“规则级”的。五、CSS盒模型1. 盒模型组成content内容区域文本、图片等padding内边距内容与边框之间的空间border边框围绕内容和内边距的边框margin外边距边框与相邻元素之间的空间2. 盒模型计算标准盒模型元素总宽度 内容宽度 padding border margin怪异盒模型元素总宽度 内容宽度包含padding和border设置怪异盒模型* { box-sizing: border-box; }3. 外边距折叠当两个垂直外边距相遇时它们将合并为一个外边距合并后的外边距等于两个外边距中较大的那个解决方法使用overflow: auto创建BFC块格式化上下文六、CSS布局技术1. 浮动布局基本原理float: left/right使元素脱离文档流向左或向右浮动清除浮动使用clear: both或创建BFC如overflow: auto应用场景多列布局、文字环绕图片2. 定位布局relative相对定位相对于自身原位置移动absolute绝对定位相对于最近的定位祖先元素移动fixed固定定位相对于视口定位滚动页面时位置不变static默认定位遵循正常文档流3. Flexbox布局容器设置display: flex可设置justify-content、align-items等属性项目设置可设置flex-grow、flex-shrink、flex-basis等属性优势灵活控制子元素间距实现复杂布局4. Grid布局容器设置display: grid可设置grid-template-columns、grid-template-rows等项目设置可设置grid-column、grid-row等属性优势二维布局适合复杂网格结构七、CSS样式属性1. 文本样式字体大小font-size: 16px;默认单位px字体颜色color: #333;或color: red;字体粗细font-weight: bold;或font-weight: 700;字体类型font-family: Arial, sans-serif;文本对齐text-align: center;左、右、居中2. 盒子样式宽高设置width: 300px; height: 200px;边框样式border: 1px solid #ddd;圆角设置border-radius: 8px;阴影效果box-shadow: 0 2px 4px rgba(0,0,0,0.1);3. 背景样式背景颜色background-color: #fff;背景图片background-image: url(bg.jpg);背景重复background-repeat: no-repeat;背景位置background-position: center;八、CSS高级特性1. 媒体查询响应式设计/* 手机设备 */media(max-width:767px){.container{width:100%;}}/* 平板设备 */media(min-width:768px)and(max-width:1023px){.container{width:750px;}}/* 桌面设备 */media(min-width:1024px){.container{width:1200px;}}作用根据不同设备尺寸应用不同样式实现响应式网页设计2. CSS动画与过渡过渡效果transition: color 0.3s ease;关键帧动画keyframesslide{0%{transform:translateX(0);}100%{transform:translateX(100px);}}.element{animation:slide 2s infinite;}应用场景按钮悬停效果、页面元素动态变化3. CSS变量:root{--primary-color:#007bff;--spacing:16px;}.button{background:var(--primary-color);padding:var(--spacing);}优势便于维护实现样式统一九、CSS最佳实践1. 代码规范展开式写法比紧凑式更易读/* 推荐 */.container{width:1200px;margin:0 auto;}/* 不推荐 */.container{width:1200px;margin:0 auto;}统一小写font-size而非FontSize空格规范冒号后加空格选择器与{之间加空格2. 组织CSS技巧模块化设计将样式按功能拆分如_header.css、_footer.cssOOCSS面向对象CSS抽离通用样式为基类特殊样式为子类使用注释/* 导航栏样式 */提高代码可读性3. 调试CSS问题浏览器开发者工具检查元素、查看样式计算样式重置* { margin: 0; padding: 0; }消除浏览器默认样式差异优先级问题排查检查选择器优先级避免过度使用!important十、学习建议从基础开始先掌握选择器、盒模型、基本属性等核心概念多实践通过实际项目巩固知识尝试实现常见布局善用开发者工具Chrome DevTools等工具能帮助你快速调试和理解CSS关注最新规范CSS3新增了许多强大特性如Flexbox、Grid、动画等学习优秀代码分析GitHub上高质量项目的CSS实现方式CSS是Web前端开发的基石掌握好CSS能让你的网页更加美观、结构清晰、用户体验更佳。随着技术发展CSS的功能越来越强大值得深入学习和探索。

相关文章:

前端CSS样式详细笔记

文章目录一、CSS基础概念1. 什么是CSS2. CSS三大核心特性3. CSS基本语法结构二、CSS引入方式三、CSS选择器详解1. 基础选择器2. 组合选择器3. 属性选择器4. 伪类与伪元素四、选择器优先级规则1. 优先级计算方法2. 优先级实战示例3. 优先级注意事项五、CSS盒模型1. 盒模型组成2.…...

Python使用DrissionPage实现自动化处理的简单入门指南

在Python自动化领域,Selenium和Requests是两个常用工具,但各有局限。DrissionPage巧妙结合了两者优势,既能用浏览器自动化处理动态页面,又能通过HTTP请求提升效率。本文将带你从零开始,用10分钟掌握DrissionPage的核心…...

像素剧本圣殿企业应用:中小型内容工作室剧本量产工作流搭建

像素剧本圣殿企业应用:中小型内容工作室剧本量产工作流搭建 1. 剧本创作新范式 在内容创作行业,剧本开发一直是耗时费力的核心环节。传统编剧流程中,一个完整剧本从构思到成稿往往需要数周甚至数月时间,这对于资源有限的中小型工…...

Python包管理工具之uv的使用详细指南

uv 是一个新兴的 Python 包管理工具,它旨在提供比 pip 和 poetry 更快、更现代的依赖管理体验。uv 由 Charles Murphy 开发,基于 Rust 构建,具有极高的性能和兼容性,支持标准的 requirements.txt 文件以及 pyproject.toml 中的依赖…...

二维码修复:3大场景+5步流程,零代码基础也能掌握的受损二维码恢复指南

二维码修复:3大场景5步流程,零代码基础也能掌握的受损二维码恢复指南 【免费下载链接】qrazybox QR Code Analysis and Recovery Toolkit 项目地址: https://gitcode.com/gh_mirrors/qr/qrazybox 日常生活中,我们经常遇到二维码因污渍…...

BetterNCM Installer:5分钟极速安装网易云音乐插件的终极指南

BetterNCM Installer:5分钟极速安装网易云音乐插件的终极指南 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer 还在为网易云音乐插件安装的繁琐步骤而头疼吗?Bet…...

如何免越狱定制iPhone界面:Cowabunga Lite完整使用指南

如何免越狱定制iPhone界面:Cowabunga Lite完整使用指南 【免费下载链接】CowabungaLite iOS 15 Customization Toolbox 项目地址: https://gitcode.com/gh_mirrors/co/CowabungaLite Cowabunga Lite是一款专为iOS 15设备设计的系统定制工具,让普通…...

Qwen3.5-2B保姆级教程:20亿参数模型端侧部署与图文对话实操

Qwen3.5-2B保姆级教程:20亿参数模型端侧部署与图文对话实操 1. 模型简介 Qwen3.5-2B是阿里云推出的轻量化多模态基础模型,属于Qwen3.5系列的小参数版本(20亿参数)。这个模型专为低功耗、低门槛部署场景设计,特别适合在端侧和边缘设备上运行…...

Qwen3.5-2B多场景案例:法律文书图识别+法条关联+类案推荐三合一系统

Qwen3.5-2B多场景案例:法律文书图识别法条关联类案推荐三合一系统 1. 轻量化多模态模型介绍 Qwen3.5-2B是Qwen3.5系列中的轻量化版本,仅有20亿参数规模,专为低功耗、低门槛部署场景设计。这款模型特别适合部署在端侧和边缘设备上&#xff0…...

MATLAB plot()函数实战:从数据到专业图表的完整工作流

1. 数据准备:从原始数据到可绘图格式 第一次用MATLAB画图时,我直接把Excel表格里的数据复制粘贴进去,结果plot()函数报错让我懵了半天。后来才发现,数据格式转换是绘图的第一步关键操作。假设你手头有一组温度传感器采集的时序数据…...

Linux下载加速:Qwen2.5-32B-Instruct优化方案

Linux下载加速:Qwen2.5-32B-Instruct优化方案 如果你经常在Linux系统上下载软件包、模型权重或者大型数据集,肯定遇到过下载速度慢、连接不稳定、甚至中途断掉需要重来的情况。特别是下载几十GB的大模型文件时,那种看着进度条半天不动的感觉…...

Ostrakon-VL终端惊艳效果:终端界面响应速度实测对比

Ostrakon-VL终端惊艳效果:终端界面响应速度实测对比 1. 像素特工终端效果展示 1.1 视觉设计亮点 Ostrakon-VL终端采用了独特的8-bit像素艺术风格,将传统零售场景中的图像识别任务转化为充满游戏感的"数据扫描任务"。这种设计不仅提升了用户…...

nginx——方向代理和负载均衡

目录 1.1 Nginx概述 1.1.1 企业青睐 Nginx 的核心原因 1.1.2 Nginx的作用 1.3 反向代理和负载均衡 1.4 注 1.4.1 代理百度并使用 18090 端口 1.1 Nginx概述 1.1.1 企业青睐 Nginx 的核心原因 Nginx 由俄罗斯开发者打造,具有超高稳定性(资源占用极低…...

JVM面试题——垃圾收集器

目录 Serial / Serial Old ParNew Parallel / Parallel Old CMS(Concurrent Mark Sweep) G1收集器 ZGC 简介 垃圾收集器对比与选择 Serial / Serial Old 定位:最古老、最稳定的单线程串行收集器,全程 STW。 算法&#xff1…...

如何高效使用FFmpegGUI:面向新手的完整视频处理工具指南

如何高效使用FFmpegGUI:面向新手的完整视频处理工具指南 【免费下载链接】ffmpegGUI ffmpeg GUI 项目地址: https://gitcode.com/gh_mirrors/ff/ffmpegGUI FFmpegGUI是一款让零基础用户也能轻松掌握专业视频处理的跨平台图形界面工具。这款基于Electron和Rea…...

QQ聊天数据管理实践指南:全平台数据访问与安全操作手册

QQ聊天数据管理实践指南:全平台数据访问与安全操作手册 【免费下载链接】qq-win-db-key 全平台 QQ 聊天数据库解密 项目地址: https://gitcode.com/gh_mirrors/qq/qq-win-db-key 问题定位:聊天数据管理的核心挑战 在数字化生活中,即时…...

解决图像修复与纹理合成难题的Resynthesizer:开源智能填充工具全指南

解决图像修复与纹理合成难题的Resynthesizer:开源智能填充工具全指南 【免费下载链接】resynthesizer Suite of gimp plugins for texture synthesis 项目地址: https://gitcode.com/gh_mirrors/re/resynthesizer 在数字图像处理领域,我们经常面临…...

2026年03月总结及随笔之又双叒叕漏更

1. 回头看日更坚持了1186天。读《人工智能全球格局:未来趋势与中国位势》更新完成读《2025世界前沿技术发展报告》开更并持续更新中2023年至2025年12月底累计码字3054280字,累计日均码字2786字。2023年至2026年03月底累计码字3334223字,累计日…...

项目7-5 单表数据记录查询—— 任务7.6.6 查询结果不重复、7.6.7 范围查询、7.6.8 字符匹配查询(二)

项目7-4 单表数据记录查询—— 任务7.6.6 查询结果不重复、7.6.7 范围查询、7.6.8 字符匹配查询(二) 一、教学目标【2分钟】 **二、课程导入【4分钟】** **三、核心内容讲解** **【第一部分:概念讲解】用大白话理解三个关键字** **【第二部分:实操演示】** **四、课堂小结与…...

用PLECS和C代码手把手教你实现数字滤波(附完整工程文件)

用PLECS和C代码实现数字滤波的工程实践指南 在电力电子和电机控制领域,数字滤波技术是实现信号处理的关键环节。无论是消除高频噪声还是提取特定频段的信号成分,一个设计良好的数字滤波器都能显著提升系统性能。本文将带您从理论到实践,通过P…...

智能磁盘清理引擎:基于Windows Cleaner的系统空间优化解决方案

智能磁盘清理引擎:基于Windows Cleaner的系统空间优化解决方案 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服! 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 在数字化办公环境中,系统磁…...

Qwen3-14B RTX 4090D专用镜像详解:FlashAttention-2+vLLM推理加速实操

Qwen3-14B RTX 4090D专用镜像详解:FlashAttention-2vLLM推理加速实操 1. 镜像概述与核心优势 Qwen3-14B RTX 4090D专用镜像是专为高性能AI推理场景打造的私有化部署解决方案。这个镜像最大的特点就是"开箱即用"——所有环境依赖、模型权重、优化组件都已…...

从零部署RT-DETR:手把手教你训练自定义目标检测数据集

1. RT-DETR简介与环境配置 RT-DETR是百度推出的实时目标检测Transformer模型,相比传统CNN架构的YOLO系列,它在保持高精度的同时实现了更快的推理速度。我第一次接触这个模型时,就被它的"端到端检测"特性吸引了——不需要复杂的后处…...

Windows安卓应用安装终极指南:告别模拟器,三步完成APK直接运行

Windows安卓应用安装终极指南:告别模拟器,三步完成APK直接运行 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 还在为Windows电脑无法直接运行安…...

数据仓库进阶:缓慢变化维度(SCD)完全解析

数据仓库进阶:缓慢变化维度(SCD)完全解析1. 缓慢变化维度概述1.1 什么是SCD?1.2 为什么需要SCD?2. SCD处理流程图3. 常见SCD类型详解3.1 Type 0:保持不变(Retain Original)3.2 Type …...

实战指南:基于快马平台快速开发并部署班级宠物园应用官方下载门户

最近学校想推广一个班级宠物园的教育应用,需要快速搭建一个官方下载页面。作为技术负责人,我尝试用InsCode(快马)平台来快速实现这个需求,整个过程比想象中顺利很多。 项目规划与结构设计 首先明确页面需要包含的几个核心模块:顶部…...

SpringAI实践(07) - 本地向量嵌入模型集成指南

SpringAI实践(07) - 本地向量嵌入模型集成指南 1.概述 本文档详细说明如何在 SpringBoot 应用中集成本地部署的 ONNX 格式向量嵌入模型(如 bge-small-zh),通过 spring-ai-starter-model-transformers 模块调用 ONNX …...

STM32按键控制LED的5种实用场景与代码优化技巧

STM32按键控制LED的5种实用场景与代码优化技巧 在嵌入式开发中,按键控制LED是最基础却最能体现设计功底的场景之一。很多开发者认为这不过是GPIO的简单操作,但实际项目中,按键响应速度、稳定性、功耗控制等细节往往决定了产品的用户体验。我曾…...

从零到一:基于51单片机与DS1302的智能万年历系统设计与实现

1. 项目背景与核心功能 每次看到桌面上那些动辄几百块的智能时钟,我都会想:这东西真的需要这么贵吗?作为一个玩了多年51单片机的老鸟,我决定用最基础的STC89C52芯片搭配DS1302时钟模块,打造一个功能不输商业产品的智能…...

深度学习模型过拟合的实战诊断与优化策略

1. 过拟合现象的诊断方法 第一次训练神经网络时,我盯着训练准确率冲到99%兴奋不已,结果测试集表现只有65%——这就是典型的过拟合现场。判断模型是否过拟合,就像医生看体检报告,需要多维度交叉验证。 最直观的方法是训练集与验证集…...