国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > CSS > 正文

詳解利用clear清除浮動的一些問題解決

2024-07-11 08:25:13
字體:
供稿:網(wǎng)友

下面這段代碼是用來清除浮動帶來的高度塌陷問題

.clearfix:before { content: "."; display: block; height: 0; clear: both; visibility: hidden;}

Question 1: 上面的代碼的能夠?qū)崿F(xiàn)清除浮動的問題嗎?

Answer: Can't. 因為clear屬性只能控制元素本身與前面的浮動元素的關(guān)系。在本例中,使用:before偽元素明顯位于所有子元素之前,故而clear屬性不會因后面的浮動元素產(chǎn)生任何作用效果。 clear屬性的官方定義可以查看CSS文檔 。那么應(yīng)該如何修改呢?將:before換成:after即可。最終代碼如下:

.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden;}

Question 2: content屬性的內(nèi)容能改成空嗎content: '';?

Answer: Yes. 因為設(shè)置了 height:0; 和 visibility: hidden。 如果設(shè)置了content:'';,那么 height:0; 和 visibility: hidden和 可以去掉嗎? 當(dāng)然可以,因為塊元素沒有內(nèi)容就不會有高度咯。

更改后的代碼如下:

.clearfix:after { content: ""; display: block; clear: both;}

Question 3: display屬性的內(nèi)容能改成 inline 或 inline-block 嗎?

Answer: 不能。 我們要明白float屬性的初衷————讓文字環(huán)繞圖片展示。翻譯成另外一句話:內(nèi)聯(lián)級別的元素會環(huán)繞浮動元素展示。那么為什么 display: block;可以解決高度塌陷的問題呢。 因為 clear屬性的含義是不讓元素本身與浮動元素的邊界相鄰。如果塊級元素要不與塊級元素邊界相鄰,只有換到下一行展示。也正為換行,才將父元素到高度撐開了,正式上面的代碼解決高度塌陷的原理。

Question 4: 下面到div元素會存在高度塌陷問題嗎?

<style> .clearfix::after { content: ""; display: block; clear:left; } img { float: right; }</style><div class="clearfix"> <span>歷史的天空</span> <img src="images/naruto.gif"></div>

Answer: 存在。為什么呢?要知道 clear屬性中, clear:left; 和 clear:right; 的區(qū)別。

left : 不與左浮動的元素產(chǎn)生邊界接觸; right : 不與右浮動的元素產(chǎn)生邊界接觸; both : 不與左浮動和右浮動的元素產(chǎn)生邊界接觸;

所以上面的代碼不會解決高度塌陷到問題。

如果有如下代碼:

<style> .clear-left { clear:left; } .clear-right { clear:right; } .fl { float: left;} .fr { float: right;} .box { height: 30px; width: 30px; background: yellowgreen; margin: 5px; }</style><div> <div class="box fl">1</div> <div class="box fr">2</div> <div class="box clear-left">3</div></div><div> <div class="box fl">1</div> <div class="box fr">2</div> <div class="box clear-right">3</div></div>
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 土默特左旗| 高邑县| 连江县| 新丰县| 玉环县| 林甸县| 平湖市| 绥棱县| 白朗县| 文登市| 武乡县| 长葛市| 大方县| 西宁市| 北安市| 奉贤区| 丹东市| 阳春市| 沙雅县| 大渡口区| 安多县| 祁阳县| 台中市| 周口市| 鸡西市| 塔城市| 穆棱市| 富裕县| 建瓯市| 江门市| 监利县| 怀化市| 淮安市| 东乌珠穆沁旗| 西畴县| 霞浦县| 佛学| 珲春市| 平武县| 修文县| 海南省|