内联元素的高度由字体及行高决定,宽度由内容、paddingbordermargin 决定。

块级元素的宽度自适应父元素,高度由其内部文档流元素的高度总和决定。若有脱离文档流的则不计算它的高度。

文档流中内联元素默认从左到右排列,宽度不够则自动换行。

文档流中块级元素从上到下排列,每个元素占一行。

空格的宽度由设计师决定。

元素之间无论多少个空格和回车都显示为一个空格。

使用   可以实现多个空格。

word-break:break-all; 可以给长单词换行。

每个字体的建议行高由于字体设计师设计,但我们可以使用 line-height 属性改变。

一个子元素脱离文档流后计算父元素高度不再算它的高度,脱离文档流的方式:float:left;position:absolute;position:fixed;

相对定位 position: relative; 不脱离文档流,不管位置怎样移动,父元素计算高度仍要算上它的高度。

不要用 height 设置高度,容易出 Bug。设置高度的话要设置 padding-toppadding-bottom

阻止 margin 合并的方法

这里研究的情况是一个块级元素内包含一个块级元素。

阻止 margin 合并可以设置父元素的上下方向的 padding 或者上下方向的 border 或者 overflow:hidden;

两种居中方法

这里研究的情况是一个块级元素内包含一个块级元素,要居中的是内部的块级元素,实现上下左右方向的居中。

父元素设置 adding-toppadding-bottom ,子元素设置 margin-leftmargin-rightauto

使用 flex 的居中方法为 display: flex; justify-content:center; align-items:center;