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

CSS 入门全解析

CSS 入门全解析:从选择器到布局的全面教学

  • 一、CSS 是什么?
  • 二、CSS 的基本语法结构
  • 三、常见选择器讲解
  • 四、盒模型讲解(重点)
  • 五、字体与颜色样式
  • 六、布局方式
    • 6.1 浮动布局(了解)
    • 6.2 Flex 弹性布局(推荐)
    • 6.3 Grid 网格布局(进阶)
  • 七、过渡与动画
    • 7.1 过渡 transition
    • 7.2 动画 animation
  • 八、实战示例:卡片组件样式
  • 九、常见问题 Q&A
    • Q: 为什么设置宽度了还不生效?
    • Q: `px` 和 `rem` 有啥区别?
    • Q: CSS 怎么引入?

一、CSS 是什么?

CSS(Cascading Style Sheets,层叠样式表)用于控制网页的样式与布局。如果说 HTML 构建网页的“骨架”,那 CSS 就是给这具骨架“穿衣服”。

它能定义:

  • 字体颜色 / 背景颜色
  • 宽高 / 边距 / 内边距
  • 布局方式(flex/grid)
  • 动画 / 过渡 等动态效果

二、CSS 的基本语法结构

选择器 {属性名: 属性值;
}

✅ 例如:

p {color: red;font-size: 16px;
}

含义是:把所有 <p> 段落标签的字体颜色设置为红色,字体大小为 16px。


三、常见选择器讲解

选择器含义示例
元素选择器选择某个标签div
类选择器选择 class.box
id选择器选择 id#header
组合选择器多个元素div, p
后代选择器某元素内的子级.menu li
属性选择器根据属性值选择input[type="text"]

✅ 示例:

/* 所有 class 为 box 的元素 */
.box {border: 1px solid #333;}

四、盒模型讲解(重点)

CSS 中的每个元素都像一个盒子,由以下部分构成:

  • content:内容区域
  • padding:内边距
  • border:边框
  • margin:外边距
    📦 可视图示结构:
区域说明
margin元素与外部之间的距离
border元素的边框
padding内容与边框之间的内边距
content元素的实际内容区域

✅ 示例:

.box {width: 200px;padding: 10px;border: 1px solid #ccc;margin: 20px;
}

五、字体与颜色样式

h1 {font-size: 24px;font-weight: bold;color: #3498db;font-family: "Arial", sans-serif;
}

常用单位:

  • px:像素(绝对单位)
  • em / rem:相对单位
  • %:相对于父元素的百分比

六、布局方式

6.1 浮动布局(了解)

.left {float: left;
}
.right {float: right;
}
.clearfix::after {content: "";display: block;clear: both;
}

6.2 Flex 弹性布局(推荐)

.container {display: flex;justify-content: space-between;align-items: center;
}

常用属性说明:

  • justify-content: 主轴对齐(如 space-between)
  • align-items: 交叉轴对齐
  • flex-direction: 主轴方向(row/column)

6.3 Grid 网格布局(进阶)

.grid {display: grid;grid-template-columns: 1fr 2fr;gap: 10px;
}

七、过渡与动画

7.1 过渡 transition

.button {background-color: blue;transition: background-color 0.3s ease;
}
.button:hover {background-color: red;
}

7.2 动画 animation

@keyframes fade-in {from { opacity: 0; }to { opacity: 1; }
}.box {animation: fade-in 1s ease-in-out;
}

八、实战示例:卡片组件样式

<div class="card"><h2>标题</h2><p>这里是内容区域</p>
</div>
.card {padding: 20px;border-radius: 8px;box-shadow: 0 4px 12px rgba(0,0,0,0.1);transition: transform 0.2s;
}
.card:hover {transform: scale(1.05);
}

九、常见问题 Q&A

Q: 为什么设置宽度了还不生效?

A: 可能是 padding 或 border 撑大了盒子,需设置 box-sizing: border-box;

Q: pxrem 有啥区别?

A: rem 是相对根元素(html)的单位,更适合响应式布局。

Q: CSS 怎么引入?

A:

  • 内联样式:<div style="color:red">
  • 内部样式:放在 <style> 标签中
  • 外部样式:通过 <link rel="stylesheet" href="style.css"> 引入

到这里,这篇文章就和大家说再见啦!我的主页里还藏着很多 篇 前端 实战干货,感兴趣的话可以点击头像看看,说不定能找到你需要的解决方案~
创作这篇内容花了很多的功夫。如果它帮你解决了问题,或者带来了启发,欢迎:
点个赞❤️ 让更多人看到优质内容
关注「前端极客探险家」🚀 每周解锁新技巧
收藏文章⭐️ 方便随时查阅
📢 特别提醒:
转载请注明原文链接,商业合作请私信联系
感谢你的阅读!我们下篇文章再见~ 💕

在这里插入图片描述

相关文章:

  • 0. Selenium工具的安装
  • deep鼠标跟随插件
  • 跟着尚硅谷学vue-day5
  • NVIDIA 高级辅助驾驶汽车安全系统 系列读后感(1)
  • 数据湖DataLake和传统数据仓库Datawarehouse的主要区别是什么?优缺点是什么?
  • excel如何绘制直方图
  • 赛灵思 XCKU115-2FLVB2104I Xilinx Kintex UltraScale FPGA
  • Kafka Tool(Offset Explorer)国内下载: Kafka可视化连接工具
  • mysql基础——数据表查询(全面解析)
  • Docker拉取镜像代理配置实践与经验分享
  • 删除新安装IBM Guardium Data Protection 12.1的baltimorecybertrustroot证书
  • 基于ssm的手机商城管理系统(源码+数据库)
  • 复合材料高置信度 DIC 测量与高级实验技术研讨会邀请函
  • spark-standalone模式
  • @Conditional
  • 【Linux庖丁解牛】—进程优先级!
  • 小白如何使用Cursor运行python程序(含环境配置教程)
  • ts中null类型--结合在vue中的使用、tsconfig.json
  • Spring框架学习(中)
  • 电子设备的“记忆大脑”:NAND、NOR、EEPROM谁在掌控你的数据?
  • 一场与纪录并行的伦敦马拉松,超40项新世界纪录诞生
  • 促进产销对接,安徽六安特色产品将来沪推介
  • 汽车爆炸致俄军中将死亡嫌疑人被羁押,作案全过程披露
  • 银川市长信箱被指“已读乱回”,官方通报:对相关责任人问责处理
  • 51岁国家移民管理局移民事务服务中心联络部副主任林艺聪逝世
  • 多家媒体及网红走进云南曲靖沾益:感受珠江源头