目录
水平布局
元素的水平方向的布局
元素在其父元素中水平方向的位置由一下几个属性共同决定
margin-left
border-left
padding-left
width
padding-right
border-right
margin-right
一个元素在其父元素中,水平布局必须要满足以下的等式
margin-left + border-left + padding-left + width + padding-right + border-right + margin-right
=父元素内容区的宽度(必须满足)
如果相加结果等式不成立,则称为过度约束,则浏览器会让等式自动调整。
1:如果七个值中没有auto情况,则浏览器会调整margin-right值以使等式满足
2:这7个值中width,margin-left,margin-right,这三个值可以设置auto。 如果有设置auto,则浏览器会自动调整auto的值,以使等式成立。
3:如果将一个宽度和一个外边距设置为auto,则宽度会调整到最大
4:如果三个值都是auto,也只会调整宽度
5:如果将两个外边距设为auto,宽度固定,则两侧外边距会设置为相同的值会使元素自动在父元素中居中,所以我们经常将左右外边距设置为auto。
垂直布局
默认情况下,父元素的高度是被子元素撑开的,父元素设置了,则设置多少就是多少。
如果子元素的大小超过了父元素,则子元素会从父元素中溢出
使用overflow属性设置父元素如何处理溢出的子元素
可选值:
visible 默认值 子元素会从父元素中溢出,在父元素外部的位置显示
hidden 溢出的内容将会被裁剪不会显示
scroll 生成两个滚动条,通过滚动条来查看完整的内容
auto 根据需要生成滚动条