CSS 指南
您可以使用多种方法来布局您的网页和应用程序。MDN 包含了各种方法的深度指南,此页面概述了所有这些方法。
常规流、块级和行内布局
如果您不使用弹性盒或网格布局,那么您的内容将使用常规流,或块级和行内布局进行布局。这些指南将帮助您理解这种布局方法的工作方式。
- 正常流中的块级和行内布局
-
常规流简介。
- 流内和流外
-
如何将元素移出常规流,以及这对文档布局的影响。
- 格式化上下文解释
-
创建新格式化上下文的介绍。
- 流式布局和书写模式
-
如果您使用不同的书写模式(例如垂直文本),流式布局的工作方式。
- 流式布局和溢出
-
理解和管理溢出。
- CSS 盒模型简介
-
理解盒模型是 CSS 的基础;本指南解释了它的工作原理。
- 掌握外边距折叠
-
了解为什么在常规流中,由于外边距折叠,您有时会得到比预期小的外边距。
- 理解 CSS z-index
-
绝对定位、弹性盒和网格都可以通过
z-index
属性来操作堆叠(元素在 z 轴上的相对位置)。本文解释了如何管理它。
多列布局
多列布局,通常称为 multicol,它将常规流中的内容分成多列。在以下指南中了解如何使用这种布局方法。
- 多列布局的基本概念
-
多列布局基本功能的概述。
- 为列添加样式
-
列的样式设置机会有限;本指南解释了您可以做什么。
- 跨列和平衡
-
元素跨列显示,以及列内容的平衡。
- 多列布局中的溢出处理
-
当内容多于可用列空间时会发生什么?
- 多列布局中的内容断裂
-
处理内容分割成列时的内容断裂。
Flexbox
CSS 弹性盒布局,通常称为 flexbox,是一种针对用户界面设计和一维项目布局优化的布局模型。在弹性布局模型中,弹性容器的子元素可以按任何方向布局,并且可以“弹性”地调整其大小,即可以增长以填充未使用的空间,也可以缩小以避免溢出父容器。
- 弹性盒的基本概念
-
弹性盒功能的概述。
- 弹性盒与其他布局方法的关系
-
弹性盒与其他布局方法和其他 CSS 规范的关系。
- 在弹性容器中对齐项目
-
盒对齐属性如何与弹性盒配合使用。
- 排序弹性项
-
解释改变项目顺序和方向的不同方法,并涵盖这样做的潜在问题。
- 控制弹性项目沿主轴的比例
-
解释
flex-grow
、flex-shrink
和flex-basis
属性。 - 掌握弹性项目的换行
-
如何创建多行弹性容器并控制这些行中项目的显示。
- 弹性盒的典型用例
-
典型的弹性盒用例的常见设计模式。
网格布局
CSS 网格布局为 CSS 引入了一个二维网格系统。网格可用于布局主要页面区域或小的用户界面元素。
- 网格布局的基本概念
-
网格布局功能的概述。
- 网格布局与其他布局方法的关系
-
网格与其他方法(如对齐、大小调整和弹性盒)的关系。
- 使用基于线的放置进行布局
-
如何按编号线放置项目。
- 网格模板区域
-
如何使用 grid-template 语法放置项目。
- 使用命名网格线进行布局
-
如何命名线,并按线名而不是数字放置项目。
- CSS 网格布局中的自动放置
-
如何管理自动放置算法,并理解浏览器如何放置项目。
- CSS 网格布局中的盒对齐
-
如何在网格中对齐项目,并在两个轴上分配空间。
- CSS 网格、逻辑值和书写模式
-
如何在网格中使用流相对属性和值,而不是物理属性和值。
- CSS 网格布局和可访问性
-
使用网格布局时的一些可访问性注意事项。
- 使用 CSS 网格实现常见布局
-
使用网格构建一些常见布局。
- 子网格
-
子网格值(网格级别 2 的一部分)的解释。
- 瀑布流布局
-
网格级别 3 中瀑布流布局功能的解释。
对齐
- 块布局中的盒模型对齐
-
对齐属性是为块级和行内布局指定的,尽管目前还没有浏览器支持。
- Flexbox 中的盒模型对齐
-
对齐属性首次出现在弹性盒中;本指南解释了它们的工作原理。
- 网格布局中的盒模型对齐
-
如何在网格布局中对齐项目。
- 多列布局中的盒模型对齐
-
对齐在多列布局中将如何工作。