浮動元素可以相互嵌套,嵌套規(guī)律與流動元素的嵌套相同。浮動的包含元素(父元素)總會自動調(diào)整自身的高度和寬度以實現(xiàn)對浮動元素的包含。
創(chuàng)新互聯(lián)公司專注于企業(yè)網(wǎng)絡營銷推廣、網(wǎng)站重做改版、七星關區(qū)網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5頁面制作、商城網(wǎng)站開發(fā)、集團公司官網(wǎng)建設、成都外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為七星關區(qū)等各大城市提供網(wǎng)站開發(fā)制作服務。
我們來看一個例子:
瀏覽器效果圖:
這時會發(fā)現(xiàn)父元素會自動調(diào)整自身的大小來包含子元素。
如果包含元素定義了高度和寬度則他不會隨子元素的大小而自動調(diào)整自身顯示區(qū)域來適應子元素的顯示。注意,在IE6及更低版本瀏覽器中包含框仍然能夠自動調(diào)整自身大小來適應子元素的顯示大小,不過在IE7版本中微軟糾正了這個不符合標準的顯示方法。如下
示例:
瀏覽器效果圖:
默認狀態(tài)下溢出不隱藏,我們可以添加 樣式 overflow:hidden; 隱藏多余的部分或overflow: scroll; 多余部分顯示滾動條。
如果把浮動元素嵌入到流動元素之內(nèi),則父元素不能夠自適應子元素的高度,
如下示例:
瀏覽器效果圖:
在上圖中可以看到包含元素div并,沒用顯示。原因就是包含元素沒有適應子元素的高度,而是根據(jù)自身定義的屬性以獨立的形式顯示(父元素沒有被撐開,僅收縮成一條直線顯示)。所以,在應用混合嵌套式,要預測到浮動與流動混合布局時會出現(xiàn)的各種怪現(xiàn)象,并積極做好兼容處理。
解決方法:可以在包含元素內(nèi)的最后一行添加一個清除元素,強制撐開包含元素,使其包含浮動元素。
示例如下:
瀏覽器效果圖:
本文章參考書籍:HTML5+CSS3+JavaScript從入門到精通(標準版)未來科技 編著
CSS結構好的話,沒有必要使用過多的類或者標識選擇符。這是因為你可以指定在選擇符內(nèi)的選擇符,而不必使用CSS嵌套。(或者更好的說法,上下文選擇符--譯者著)
1、比如:
ExampleSourceCode
#top{??background-color:#ccc;??padding:1em??}??#toph1{??color:#ff0;??}??#topp{??color:red;??font-weight:bold;??}
2、這就減去不必要的類或者標識選擇符,如果應用到像這樣的HTML中:
ExampleSourceCode
dividdivid="top"?h1Chocolatecurry/h1?pThisismyrecipeformakingcurrypurelywithchocolate/p?pMmmmmmmmmm/p?/div
這是因為,用英文半角空格間隔選擇符,我們指明了在標識id內(nèi)的h1有“#ff0”的顏色,而p則是紅色red和粗體bold。這可能也會有些復雜(因為可能不止兩級,比如在內(nèi)在內(nèi)在內(nèi)在內(nèi)等等)。有必要多加練習。
.input_1:hover{
border:1px solid #9C0;
}
.input_1:hover .input_2{
background:#9C0;
}
.input_2:hover{
background:#9C0;
}
.input_2:hover .input_1{
border:1px solid #9C0;
}