最終運行結果則是塊級元素獨佔一行,行內元素並排顯示,徹底符合標準文檔流的模式.
<style>
div{
width: 100px;
height: 100px;
border: 2px solid red;
}
span{
border: 1px solid blue;
}
</style>
</head>
<body>
<div>css</div>
<div>html</div>
<div>js</div>
<span>span</span>
<span>span</span>
<span>span</span>
<span>span</span>
</body>
複製代碼
代碼跑起來會出現字圍效果,即文字(足夠多時效果更明顯)將圖片包圍了起來
<style>
img{
width: 100px;
height: 100px;
border: 2px solid green;
float:left;
}
</style>
</head>
<body>
<div>
<!--圖片能夠爲任意-->
<img src="./imgs/icon.png" alt="">
做用本來是爲了實現字圍效果,但後來發現可讓男標籤並排顯示,在同一行上和平共處。
做用本來是爲了實現字圍效果,但後來發現可讓男標籤並排顯示,在同一行上和平共處。
做用本來是爲了實現字圍效果,但後來發現可讓男標籤並排顯示,在同一行上和平共處。
做用本來是爲了實現字圍效果,但後來發現可讓男標籤並排顯示,在同一行上和平共處。
做用本來是爲了實現字圍效果,但後來發現可讓男標籤並排顯示,在同一行上和平共處。
</div>
</body>
使得塊級元素並排顯示
<style>
div{
width: 100px;
height: 100px;
background-color:#358990;
border: 2px solid yellow;
/* 會使得div並排顯示 */
float: left;
}
</style>
</head>
<body>
<div>div</div>
<div>div</div>
<div>div</div>
</body>
複製代碼
(1)浮動有三大特色css
(2)浮動的其它特色
0,浮動的初衷目的是爲了實現字圍效果,後來才發現,浮動可讓多個男標籤並排顯示。
1,在一個父元素內部,若是一個元素浮動了,那麼它就脫離了標準文檔流,後面的元素就向上排,它只會對浮動元素後面的元素起做用。
2,浮動並無徹底脫離標準文檔流,僅僅是半脫離,具備脫標性,若是後面元素內部有文字,這些文字會環繞在浮動元素的周圍,產生了字圍效果。
3,若是多個元素浮動了,那麼它們會並排顯示,若是都是向同一方向的浮動,它們會牢牢貼靠在一塊兒。
4,若是一個元素浮動了,先向上移動,直到貼靠到父元素頂部,接着知足左浮動或者右浮動的要求,向左邊界或右邊界浮動,直到移動到父元素的邊界處。
5,若是一個元素沒有設置高度,它的高度由裏面的內容撐起來,若是父元素內部元素都浮動了,那麼會形成父元素的塌陷問題;而若是父元素也浮動了,則不會出現高度的塌陷。
6,一個元素浮動了,那麼它也會受到父元素的控制。當父元素寬度變小時,裝不下全部子元素時,後面的子元素具備貼靠性。當父元素小到極致時,裏面浮動的子元素寬度是不會改變的,也就是說邊框走,裏面內容寬度不變。 7,就是說若是有一個元素爲左浮動,一個元素爲右浮動,那麼你須要把右浮動的元素寫在左左浮動的前面。
8,若是元素浮動,那麼會形成的影響有:形成父元素高度塌陷;對後面兄弟元素形成影響。
(3)元素浮動形成的影響解決方法
針對的是父元素塌陷的解決方案:
1,加高法:就是直接給塊級元素加一個高度;大部分狀況下是不用的,由於父元素的高度都是由子元素的內容撐起來的。
2,overflow:hidden:使用了overflow:hidden,父元素會隨着子元素的高度變化而變化。overflow:hidden原本是用來處理溢出的,在使用過程當中,須要注意子元素若是想要超出父元素的高度,此時overflow:hidden也就不適合啦!
3,clear:both(內牆法):在全部子元素後面加一個空的div,在這個div上面加clear:both;它的優勢在於clear:both專業清除浮動的,而缺點是多寫一個代碼
針對後面兄弟元素影響的解決方案:
1,直接在受影響元素上加clear:both。
工程中經常使用的清除浮動的方案:
1,利用僞元素 after 也就是說直接寫一個清除浮動的類(clear):
舉例.clear:after{content=""; display:block; clear:both; height:0; overflow:hidden;}html