国庆节10月1日
--


CSS布局速查卡片,涵盖CSS盒模型、Flex布局、页面居中方案的核心用法与实战技巧
页面中所有元素都可以看作一个盒子,由盒子将元素包含在矩形区域内。CSS 盒模型是页面布局的基石,包含四个部分:
1div {2 width: 200px; /* 宽度 */3 height: 200px; /* 高度 */4 box-sizing: border-box; /* 宽高包含 border+padding */5 background-color: aquamarine;6
7 padding: 20px; /* 内边距(四边统一) */8 border: 10px solid red; /* 边框:粗细 线型 颜色 */9 margin: 30px; /* 外边距(四边统一) */10}| 写法 | 含义 |
|---|---|
padding: 20px; | 上、右、下、左均为 20px |
padding: 20px 10px; | 上下 20px,左右 10px |
padding: 10px 20px 30px 40px; | 上 10px,右 20px,下 30px,左 40px(顺时针) |
| 值 | 说明 |
|---|---|
content-box(默认) | width/height 仅指 content 区域,不包含 padding 和 border |
border-box | width/height 包含 content + padding + border,更直观,推荐使用 |
盒子实际占据的空间 = content + padding + border + margin(margin 不计入盒子自身大小,但影响周围元素的位置)
margin: 0 auto;border + padding + background-colormargin 设置同级元素间距,padding 设置内容与边界的间距margin 会发生折叠(取较大值而非相加)box-sizing: border-box;,避免宽高计算混乱border 的三个参数顺序:宽度 线型 颜色,其中 solid(实线)最常用Flex(Flexible Box,弹性布局)是一种一维布局模型。设置 display: flex; 的元素成为 Flex 容器(container),其所有直接子元素自动成为 Flex 项目(item)。通过给父容器添加 flex 属性来控制子元素的位置和排列方式。
1.container {2 display: flex;3 flex-direction: row; /* 主轴方向 */4 justify-content: space-between; /* 主轴对齐 */5 align-items: center; /* 交叉轴对齐 */6}| 属性 | 说明 | 常用值 |
|---|---|---|
display: flex | 开启弹性布局 | flex |
flex-direction | 主轴方向 | row(横向,默认)、column(纵向) |
justify-content | 主轴对齐方式 | flex-start / flex-end / center / space-between / space-around |
align-items | 交叉轴对齐方式 | flex-start / flex-end / center / stretch(默认) |
| 值 | 效果 |
|---|---|
flex-start | 从头排列(默认) |
flex-end | 从尾排列 |
center | 居中排列 |
space-between | 两端贴边,中间平分剩余空间 |
space-around | 每个项目两侧留白相等 |
1.header {2 display: flex;3 justify-content: space-between;4 align-items: center;5}flex-direction: column; justify-content: center; align-items: center;flex-direction: column 时主轴变为纵向,justify-content 控制垂直方向对齐margin 在 Flex 容器中仍有效,margin: auto 可实现独特的居中效果flex-wrap: wrap 实现换行页面居中布局(版心居中)是指将网页主体内容限制在固定宽度内,并在浏览器窗口中水平居中显示。这是现代网页最常见的布局模式。
1.container {2 width: 70%; /* 宽度占父元素70%,也可用固定像素如 960px */3 margin: 0 auto; /* 上下0,左右自动(核心居中逻辑) */4}margin: 0 auto; 的居中原理:将左右外边距均设为 auto,浏览器自动平分剩余空间,实现块级元素水平居中。
1<style>2 body {3 margin: 0;4 }5 #container {6 width: 80%;7 margin: 0 auto;8 }9</style>10
11<body>12 <div id="container">13 <!-- 所有页面内容包裹在此容器中 -->14 </div>15</body>margin: 0 auto 仅对块级元素且设置了明确 width 的元素生效justify-content: center 实现子元素居中,但 margin: 0 auto 更轻量max-width 而非固定像素值body 的 margin 设为 0 可消除浏览器默认的外边距如果你喜欢,那么欢迎来到我的世界!
了解更多暂未播放



"所有的相遇都是久别重逢。"—— 未知


