- 在標(biāo)準(zhǔn)流中內(nèi)容的高度可以撐起父元素的高度。
- 在浮動(dòng)流中,浮動(dòng)的元素是是不可以撐起父元素的高度的。
一、清除浮動(dòng)元素
1.清除浮動(dòng)的方式一:
- 給前面一個(gè)父元素設(shè)置高度;但是在企業(yè)開發(fā)中,我們能不寫高度就不寫高度,所以這種方式用的很少。
- 清除浮動(dòng)的方式二:
給我們的后面的盒子添加clear 屬性,
clear 屬性的取值:
none:默認(rèn)取值,按照浮動(dòng)元素的排序規(guī)則來排序(左浮動(dòng)找左浮動(dòng),有浮動(dòng)找有浮動(dòng))
left:不要找前面的左浮動(dòng)元素。
right:不要找前面的有浮動(dòng)元素。
both: 不要找前面的左浮動(dòng)元素和右浮動(dòng)元素。
注意點(diǎn) :這種清除方式會(huì)導(dǎo)致margin屬性失效。
- 清除浮動(dòng)的方式三
- 外墻法
在兩個(gè)盒子中間添加一個(gè)額外的塊級(jí)元素;
給這個(gè)額外添加的塊級(jí)元素設(shè)置clear:both 屬性;
注意點(diǎn):外墻法它可以讓第二個(gè)盒子使用margin-top屬性,但是外墻法不可以讓第一個(gè)盒子使用margin-bottom屬性
- 內(nèi)墻法
在第一個(gè)盒子中所有子元素最后添加一個(gè)額外的塊級(jí)元素;
給這個(gè)額外添加的塊級(jí)元素設(shè)置clear:both 屬性;
注意點(diǎn):內(nèi)墻法它可以讓第二個(gè)盒子使用margin-top屬性,內(nèi)墻法也可以讓第一個(gè)盒子使用margin-bottom屬性
- 外墻法和內(nèi)墻法的區(qū)別:
- 外墻法不能撐起第一個(gè)盒子的高度,而內(nèi)墻法不能撐起來第一個(gè)盒子的高度。
- 在我們的企業(yè)開發(fā)中不常用隔墻法來清除浮動(dòng)。
二,偽元素選擇器
1、 什么是偽元素?
偽元素選擇器的作用就是給指定標(biāo)簽的內(nèi)容前面添加一個(gè)子元素或者給指定標(biāo)簽的內(nèi)容后面添加一個(gè)元素。
格式:
標(biāo)簽名稱::before{
屬性名稱:值
}
給指定標(biāo)簽的內(nèi)容前面添加一個(gè)子元素;
標(biāo)簽名稱::after{
屬性名稱:值
}
給指定標(biāo)簽的內(nèi)容后面添加一個(gè)子元素;
- 利用偽元素清除浮動(dòng)的代碼:
div::after{
content:"";
display:block;
height:0
visibility:hidden;
clear:both
}
以上代碼對(duì)ie6 無效,需要增加*zoom:;
- 清除浮動(dòng)元素方式五
- overflow:hidden:
作用:可以將超出標(biāo)簽范圍的內(nèi)容裁剪了;
作用:清除浮動(dòng)元素;
作用:可以通過overflow:hidden 讓里面的盒子設(shè)置margin-top之后外面的盒子不被定下來;