正常布局流,也叫正常文档流,Normal flow。
指的是没有改变默认布局规则下的页面元素布局方式。
制作网站应该从一个简单清晰的正常布局流下进行,这样即使用户使用受限的浏览器或屏幕(比如对 CSS 支持不到位的老旧浏览器,或者用户自定义了 CSS)也可以顺利浏览内容。
默认情况下元素的布局
独立元素的布局
首先元素会被放在一个盒子中。
块级元素的内容宽度是父元素的 100%,高度与内容高度一致。
内联元素的 height、width 与内容一致,无法自定义设置。如果想设置则需要把元素设置为 display:block,或 display:inline-block。
元素之间的布局
块级元素按照基于其父元素的书写顺序(默认值:horizontal-tb)的块流动方式(block flow direction)放置,每个块级元素会在上一个元素下面另起一行,由设置好的margin分隔。
内联元素不会另起一行。父级块元素空间允许的情况下,它与其他内联元素、相邻文本安排在同一行。溢出的内容放在下一行。
如果两个相邻的元素都设置margin并且重叠,更大的设置会被保留,小的则消失。