外邊距margin的合并現(xiàn)象:在垂直方向上,如果有兩個(gè)相鄰的外邊距厨姚,就會(huì)發(fā)生外邊距合并現(xiàn)象衅澈。
在默認(rèn)布局的水平方向,margin會(huì)累加左右兩邊標(biāo)簽的外邊距寬度谬墙。在垂直方向上今布,margin會(huì)合并上下兩邊標(biāo)簽的外邊距高度,誰(shuí)大就顯示誰(shuí)的外邊距高度芭梯,只選擇一個(gè)险耀,不累加。
CSS盒子模型:HTML中所有的標(biāo)簽玖喘,都是一個(gè)盒子。
在HTML中所有的標(biāo)簽都可以設(shè)置:寬度/高度蘑志、邊框累奈、內(nèi)/外邊距
寬度/高度:指定可以存放內(nèi)容的區(qū)域
-內(nèi)容寬高:width/height
就是通過(guò)標(biāo)簽的width/height屬性設(shè)置的寬度和高度贬派。
-元素寬高:2border+2padding+width/height
寬度 = 左邊框+左內(nèi)邊距+內(nèi)容寬度+右內(nèi)邊距+右邊框
高度同理。
-元素空間寬高:2margin+2border+2*padding+width/height
寬度 = 左外邊距+左邊框+左內(nèi)邊距+內(nèi)容寬度+右內(nèi)邊距+右邊框+右外邊距
高度同理澎媒。
盒子的 box-sizing 屬性:CSS3中新增的屬性搞乏。
box-sizing屬性可以保證給盒子新增了border和padding之后,元素的寬高不變戒努,保證了內(nèi)部元素不溢出请敦。
在開(kāi)發(fā)中,如果有需求到嵌套(父子)關(guān)系盒子之間的距離的時(shí)候储玫,應(yīng)該使用內(nèi)邊距padding屬性來(lái)控制侍筛,不要使用外邊距margin屬性,margin屬性一般用于控制同級(jí)(兄弟)關(guān)系的盒子
.b {margin:0 auto;} 可以設(shè)置嵌套關(guān)系盒子的水平居中撒穷,不能控制垂直居中匣椰。
div中 text-align:center; 和 margin:0 auto; 的區(qū)別:
- text-align:center 只是用于 div 中文字和圖片的水平居中
- margin:0 auto 只是讓盒子自己水平居中