課程
/前端開發
/HTML/CSS
/如何用CSS進行網頁布局
如果把clear:both去掉 為什么footer的div就跑上面了呢?它本身不就是在main的下面嗎?為什么加了又跑到main的下面了呢
2016-04-29
源自:如何用CSS進行網頁布局 5-2
正在回答
div是塊狀元素,它會很霸道的占一行,從代碼可以看出啊,整個的main內容塊沒有指定高度的,只有它的子內容塊指定了高度,但是它的子內容塊是浮動的,所以子內容塊的高度不能影響成為main的高度,那么瀏覽器就默認了把footer的div顯示在top的下一行,這個時候添加clear:both清除了上面模塊的浮動特性,那么此時main的高度就是和子內容塊的高度是一樣的,因此瀏覽器就會把footer的div顯示在main的下一行; ? 你可以嘗試把clear:both語句清除,然后定義如下的樣式?.main{height:600px;};把main的高度加上,那么瀏覽器也會正確顯示的(我也剛學的,表達不清楚,不知道你可不可以理解)
晨曦_0026 提問者
JoKer49
BoomShakaLaka93
打邊爐
謝謝!
舉報
用最簡潔的案例教你布局的那些知識,這是前端工程師基本技能
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-04-29
div是塊狀元素,它會很霸道的占一行,從代碼可以看出啊,整個的main內容塊沒有指定高度的,只有它的子內容塊指定了高度,但是它的子內容塊是浮動的,所以子內容塊的高度不能影響成為main的高度,那么瀏覽器就默認了把footer的div顯示在top的下一行,這個時候添加clear:both清除了上面模塊的浮動特性,那么此時main的高度就是和子內容塊的高度是一樣的,因此瀏覽器就會把footer的div顯示在main的下一行; ? 你可以嘗試把clear:both語句清除,然后定義如下的樣式?.main{height:600px;};把main的高度加上,那么瀏覽器也會正確顯示的(我也剛學的,表達不清楚,不知道你可不可以理解)
2016-06-01
謝謝!