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

11.CSS盒模型、弹性布局与调试工具全解析(含代码示例)

目录

一、盒模型

二、边框(border)

基础属性

三、box-sizing 属性(修改盒模型行为)

四、内边距(padding)

(一)基础写法示例

​编辑

(二)复合写法

(三)注意

五、外边距(margin)

(一)基础写法示例

(二)复合写法

六、块级元素水平居中

示例 1(居中盒子,非文字)

示例 2(文字居中 + 盒子居中)

注意

七、去除浏览器默认样式

示例(带默认样式清除)

八、弹性布局(flex)

1. 常用属性:justify-content(水平方向)

示例 1(justify-content: start)

示例 2(justify-content: center)

示例 3(justify-content: end)

示例 4(justify-content: space-between)

注意

2.常用属性:align-items(垂直方向)

九、Chrome 调试工具 -- 查看 CSS 属性

1. 打开浏览器

2. 标签页含义


一、盒模型

每一个 HTML 元素就相当于是一个矩形的 “盒子”,这个盒子由以下几个部分构成:

  • 边框border

  • 内容content

  • 内边距padding

  • 外边距margin

二、边框(border)

基础属性

  • 粗细:border-width

  • 样式:border-style(默认没边框;solid实线边框;dashed虚线边框;dotted点线边框)

  • 颜色:border-color

示例代码:

<style> div { width: 500px; height: 250px; border-width: 10px; border-style: solid; border-color: green; } </style> <body> <div></div> </body>

另一个代码示例:

<style> div { width: 200px; height: 100px; border-color: black; border-style: solid; border-width: 10px; /* 也可以简写,三个元素属性的顺序没有特定要求 */ /* border: black solid 10px; */ box-sizing: border-box; } </style> <body> <div></div> </body>

注意:

CSS注释

/* 注释内容 */

<style>标签内或外部 CSS 文件

/* 这是一行 CSS 注释 */

HTML注释

<!-- 注释内容 -->

HTML 文件中(CSS 代码块外)

<!-- 这是一行 HTML 注释 -->

JavaScript注释

// 单行/* 多行 */

<script>标签内或外部 JS 文件

// 单行注释

三、box-sizing 属性(修改盒模型行为)

通过box-sizing属性可以修改浏览器的行为,使边框不再撑大盒子。

  • *为通配符选择器。

示例:

* { box-sizing: border-box; }

四、内边距(padding)

padding设置内容和边框之间的距离。默认内容是顶着边框放置的,用padding来控制这个距离,可以给四个方向都加上边距:

  • padding-top

  • padding-bottom

  • padding-left

  • padding-right

(一)基础写法示例

<style> div { width: 200px; height: 100px; padding-left: 5px; padding-top: 5px; padding-right: 5px; padding-bottom: 5px; } </style> <body> <div>这是一个div</div> </body>

(二)复合写法

可以把多个方向的padding合并到一起(四种情况都要记住,都很常见):

  • padding: 5px;:表示四个方向都是 5px

  • padding: 5px 10px;:表示上下内边距 5px,左右内边距为 10px

  • padding: 5px 10px 20px;:表示上边距 5px,左右内边距为 10px,下内边距为 20px

  • padding: 5px 10px 20px 30px;:表示上 5px,右 10px,下 20px,左 30px(顺时针)

(三)注意

  • 使用box-sizing: border-box;属性也可以使内边距不再撑大盒子(和上面border类似)。

五、外边距(margin)

控制盒子和盒子之间的距离,可以给四个方向都加上边距:

  • margin-top

  • margin-bottom

  • margin-left

  • margin-right

(一)基础写法示例

<style> div { border: solid green 5px; margin-top: 5px; margin-bottom: 5px; margin-left: 5px; margin-right: 5px; } </style> <body> <div></div> <div></div> <div></div> </body>

(二)复合写法

规则同padding

  • margin: 10px;:四个方向都设置

  • margin: 10px 20px;:上下为 10,左右 20

  • margin: 10px 20px 30px;:上 10,左右 20,下 30

  • margin: 10px 20px 30px 40px;:上 10,右 20,下 30,左 40

六、块级元素水平居中

前提:

  • 指定宽度(如果不指定宽度,默认和父元素一致)

  • 把水平margin设为auto

三种写法均可:

margin-left: auto; margin-right: auto; margin: auto; margin: 0 auto;

示例 1(居中盒子,非文字)

<style> div { border: solid green 5px; width: 200px; height: 100px; margin: auto; } </style> <body> <div>这是一个div</div> <div>这是一个div</div> <div>这是一个div</div> </body>

示例 2(文字居中 + 盒子居中)

<style> div { border: solid green 5px; width: 200px; height: 100px; /* margin: auto; */ text-align: center; margin-left: auto; margin-right: auto; } </style> <body> <div>这是一个div</div> <div>这是一个div</div> <div>这是一个div</div> </body>
注意
  • 这个水平居中的方式和text-align不一样:

    • margin: auto是给行内元素或者行内块元素居中的。

    • text-align: center是让行内元素或者行内块元素居中的。

  • 另外,对于垂直居中,不能使用 “上下marginauto” 的方式。

七、去除浏览器默认样式

浏览器会给元素加上一些默认的样式,尤其是内外边距,不同浏览器的默认样式存在差别。为了保证代码在不同的浏览器上都能按照统一的样式显示,往往我们会去除浏览器默认样式。使用通配符选择器即可完成这件事情:

* { margin: 0; padding: 0; }

示例(带默认样式清除)

<style> div { border: solid green 5px; width: 200px; height: 100px; /* margin: auto; */ text-align: center; margin: 0px; padding: 0px; } </style> <body> <div>这是一个div</div> <div>这是一个div</div> <div>这是一个div</div> </body>

八、弹性布局(flex)

1. 常用属性:justify-content(水平方向)

设置主轴上的子元素排列方式。使用之前一定要确定好主轴是哪个方向。

示例 1(justify-content: start

<body> <div> <span>1</span> <span>2</span> <span>3</span> </div> <style> div { height: 700px; width: 700px; background-color: green; display: flex; justify-content: start; } div span { height: 100px; width: 100px; background-color: red; } </style> </body>
示例 2(justify-content: center

<body> <div> <span>1</span> <span>2</span> <span>3</span> </div> <style> div { height: 700px; width: 700px; background-color: green; display: flex; justify-content: center; } div span { height: 100px; width: 100px; background-color: red; } </style> </body>
示例 3(justify-content: end

<body> <div> <span>1</span> <span>2</span> <span>3</span> </div> <style> div { height: 700px; width: 700px; background-color: green; display: flex; justify-content: end; } div span { height: 100px; width: 100px; background-color: red; } </style> </body>
示例 4(justify-content: space-between

<body> <div> <span>1</span> <span>2</span> <span>3</span> </div> <style> div { height: 700px; width: 700px; background-color: green; display: flex; justify-content: space-between; } div span { height: 100px; width: 100px; background-color: red; } </style> </body>
注意
  • 弹性布局一定要加在父级元素上!!!!!!!!!!!!!!

2.常用属性:align-items(垂直方向)

<body> <div> <span>1</span> <span>2</span> <span>3</span> </div> <style> div { height: 700px; width: 700px; background-color: green; display: flex; justify-content: space-between; /* 垂直方向上的三种弹性布局 */ /* align-items: start; */ /* align-items: center; */ align-items: end; } div span { height: 100px; width: 100px; background-color: red; } </style> </body>

九、Chrome 调试工具 -- 查看 CSS 属性

1. 打开浏览器

有两种方式可以打开 Chrome 调试工具:

  • 直接按 F12 键

  • 鼠标右键页面 => 检查元素

2. 标签页含义

  • elements:查看标签结构

  • console:查看控制台

  • source:查看源码 + 断点调试

  • network:查看前后端交互过程

  • application:查看浏览器提供的一些扩展功能(本地存储等)

http://www.jsqmd.com/news/922605/

相关文章:

  • 沂南漏水检测维修|消防管道查漏、自来水地埋管测漏、卫生间漏水,厨卫防水、电缆故障、水电维修 优选推荐(全域覆盖24小时电话) - 资讯热点
  • 争对错相比于权衡利弊
  • Arduino气动龙翼制作:从CAD设计到机电一体化工程实践
  • Arduino蓝牙遥控小车实战:从硬件选型到代码调试全解析
  • 原生移动应用集成TypeScript SDK:架构设计与工程实践
  • 2026 年厦门靓之声 DSP 专项调音行业第一:遥遥领先的技术标杆与品质典范 - 汽车音响改装
  • 创客电路设计实战:从元件到PCB,掌握硬件开发全流程
  • Translumo:三分钟上手的终极免费实时屏幕翻译神器,打破语言障碍的完美解决方案
  • 校园失物招领系统 - 作业完成说明
  • JiYuTrainer实用指南:轻松解除极域电子教室控制限制
  • 联想刃7000K BIOS权限解锁:3步实现完整硬件控制权
  • 技术深度解析:ComfyUI ControlNet Aux预处理器架构优化与工程化解决方案
  • 零基础教程:用Real-ESRGAN-GUI免费实现AI图像超分辨率修复
  • 六安金安区家庭生日宴小型宴席门店榜单 实用选店参考 - 资讯快报
  • OBS StreamFX终极指南:5分钟学会电影级直播特效制作
  • 抖音无水印视频批量下载终极指南:免费开源工具实现高效内容获取
  • 告别黑屏花屏!Ubuntu 22.04 LTS下xrdp远程桌面保姆级配置指南(附Gnome/XFCE双桌面方案)
  • 2026年5月全自动过滤器厂家推荐:反冲自清洗、双相不锈钢、多芯式、立式刷式、电动吸吮过滤器品牌精选 - 企业推荐官【官方】
  • 如何快速解锁QQ音乐加密文件:qmcflac2mp3完整转换指南
  • Topit:让你的Mac窗口“悬浮“起来,工作效率提升3倍的秘诀
  • 基于Arduino的智能安防系统:红外遥控与传感器融合实战
  • (AI总结版)梳理WSL安装HBase的完整过程,包括下载、配置、端口绑定、ZooKeeper、Master启动失败等
  • 2026年常州黄金回收优选:添价收三十余年匠心领跑 - 薛定谔的梨花猫
  • 德语/法语/西语翻译延迟超800ms?紧急修复指南:GPU推理调度+缓存预热双策略,30分钟压降至112ms
  • 如何彻底告别网盘限速:LinkSwift网盘直链下载助手的完整使用指南
  • 2026宜兴汽车贴膜测评:隐形车衣/玻璃膜门店实测 - 资讯快报
  • ComfyUI ControlNet Aux:AI视觉预处理架构深度解析与50%性能优化实践
  • 工厂模式实战——注册创建兜底,一个工厂的三个职责
  • 告别模糊动画:3分钟掌握AI超分辨率让GIF和视频重获新生
  • AMESim 2021.1 保姆级安装避坑指南:从环境变量到许可证,一次搞定所有报错