浮動什么意思呢,比如,默認的,我們知道,div是占滿一行的,現在我們想把兩個div顯示在一行上,那怎么辦呢
10年積累的成都做網站、成都網站制作經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先網站策劃后付款的網站建設流程,更有杜爾伯特免費網站建設讓你可以放心的選擇與我們合作。
div style="width:100px;"11111/divdiv style="width:150px"2222/div
這樣我們就設置了兩個div,一個寬度100px,一個寬150px,可預覽一下,我們的div仍在兩行上,那么怎么把它改到一行上呢,這兒就需要float,設置第一個div的float為left
div style="width:100px;float:left;"11111/divdiv style="width:150px"2222/div
再預覽,就可以看到,它們到一行上了。
clear是什么意思呢,clear是清除的意思,它有三個值,left,right,both
很好理解,如果設置了clear:left,它就不怕它的左邊有float,同理clear:right,clear:both,是左右都不讓有float
舉個例子,還是上面的
我們設置第二個div的clear:left,也就是不讓它左邊有float
div style="width:100px;float:left;"11111/divdiv style="width:150px;clear:left;"2222/div
我們預覽一下,就可以看到,盡管第一個div已經float:left了,這兩個div仍然在兩行上,就是由于第二個div不讓它左邊有float
因為css的定義是后面的可以覆蓋前面的,明白了吧
浮動元素可以相互嵌套,嵌套規律與流動元素的嵌套相同。浮動的包含元素(父元素)總會自動調整自身的高度和寬度以實現對浮動元素的包含。
我們來看一個例子:
瀏覽器效果圖:
這時會發現父元素會自動調整自身的大小來包含子元素。
如果包含元素定義了高度和寬度則他不會隨子元素的大小而自動調整自身顯示區域來適應子元素的顯示。注意,在IE6及更低版本瀏覽器中包含框仍然能夠自動調整自身大小來適應子元素的顯示大小,不過在IE7版本中微軟糾正了這個不符合標準的顯示方法。如下
示例:
瀏覽器效果圖:
默認狀態下溢出不隱藏,我們可以添加 樣式 overflow:hidden; 隱藏多余的部分或overflow: scroll; 多余部分顯示滾動條。
如果把浮動元素嵌入到流動元素之內,則父元素不能夠自適應子元素的高度,
如下示例:
瀏覽器效果圖:
在上圖中可以看到包含元素div并,沒用顯示。原因就是包含元素沒有適應子元素的高度,而是根據自身定義的屬性以獨立的形式顯示(父元素沒有被撐開,僅收縮成一條直線顯示)。所以,在應用混合嵌套式,要預測到浮動與流動混合布局時會出現的各種怪現象,并積極做好兼容處理。
解決方法:可以在包含元素內的最后一行添加一個清除元素,強制撐開包含元素,使其包含浮動元素。
示例如下:
瀏覽器效果圖:
本文章參考書籍:HTML5+CSS3+JavaScript從入門到精通(標準版)未來科技 編著
問題補充:向 jszjgqq 和 363822803 提問 : 清除浮動是 清除自身的浮動? 還是 清除其它元素浮動對自己的影響?
清除其它元素浮動對自己的影響
=======================================================
問題一:一直搞不明白,既然清除了浮動(如上例子),就不應該再浮動了,即兩個div應該 各自 獨占一行,而事實是兩個div仍然浮動在 左右兩邊 ??
答: 清除浮動是清除的本身,也就是說第三個div元素不會進行浮動,而前面兩個div不受任何的影響.如果說第三個元素不清除浮動的話那就會跟著上一個元素進行浮動.
問題二:“clear :both”,兩個浮動的div,是在它的上面啊?怎么會是both呢?
在div sytle="clear :both"/div這行代碼中,both指的不就是 本元素(div) 的左右
兩邊嗎?
clear :both 的意思是清除左右兩邊的浮動元素,
我建議你前面2個div 都寫float:left 這樣測試的時候更加好理解
如果你這么寫
div id="content1"
div style="float :left"/div
div style="float :left"/div
div/div
/div
上面代碼的第三個div你會發現緊貼著第二個div后面.
如果第三個div寫style="clear:both"的話就不會浮動了,或者說clear:left 清除左浮動.
我覺得float很好的理解,你自己多寫幾個例子研究下就行了,不要光憑著想象去解決問題,要用實際的例子去證明你的猜測.
網頁題目:包含css樣式規則float的詞條
當前網址:http://vcdvsql.cn/article20/dsdigjo.html
成都網站建設公司_創新互聯,為您提供網站維護、做網站、營銷型網站建設、響應式網站、服務器托管、網站收錄
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯