摘要:除非該元素前面還有一個浮動元素,這時它就會緊挨著前面的元素。真正讓人迷惑的是浮動元素會盡可能的居頂,并且垂直定位規(guī)則比水平浮動規(guī)則的優(yōu)先級更高。
浮動到底是什么?
它既不是position,但又不在標準流里,那么它究竟是怎么定位的?
浮動一開始作為文字環(huán)繞圖片產(chǎn)生
DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Documenttitle>
<style type="text/css">
img {
width: 60px;
float: right;
margin: 20px;
}
.aside{
float: right;width: 15em;margin: 0 1em 1em;padding: 0.25em;border:1px solid;
}
style>
head>
<body>
<img src="icon_head.png" alt="icon_head.png"/>
<p >我是測試文字1我是測試文字我是測試文字2我是測試文字我是測3試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我4是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文5字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測6試文字我是測試p>
<p class="aside">
這又是另一端蚊子了
p>
<p >我是測試文字1我是測試文字我是測試文字2我是測試文字我是測3試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我4是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文5字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測試文字我是測6試文字我p>
body>
html>
文字環(huán)繞圖片
(如果看不到環(huán)繞效果,試試把窗口變小)
float不在標準流,但卻會在標準流占位
DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Documenttitle>
<style type="text/css">
.float{float: left;
background: red;
margin: 10px;}
.bg{background: green;}
style>
head>
<body>
<div>不浮動元素div>
<div class="float">浮動元素div>
<div class="bg">不浮動元素div>
body>
html>
占位
這個占位很神奇,浮動元素在下一元素的盒模型內(nèi),有點像ps添加了一個層,但這個層不是簡單覆蓋,而是告訴下一層這個位置我占了,你往旁邊去吧!
還有,行內(nèi)元素被設(shè)置浮動后,可以設(shè)置高度和寬度,這是為什么呢?
這個行內(nèi)元素就像被設(shè)置成inline-block一樣,但和inline-block比又多了浮動的功能,具體原因還不清楚待查
那么浮動到底按照什么順序組合的?
我們來看代碼
DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Documenttitle>
<style type="text/css">
ul{list-style: none;width: 350px;}
ul li{float:left;margin:4px;}
img {
vertical-align: top;
}
style>
head>
<body>
<ul>
<li><img src="http://placehold.it/100x100&text=1"/>li>
<li><img src="http://placehold.it/100x150&text=2"/>li>
<li><img src="http://placehold.it/100x100&text=3"/>li>
<li><img src="http://placehold.it/100x100&text=4"/>li>
<li><img src="http://placehold.it/100x100&text=5"/>li>
<li><img src="http://placehold.it/100x150&text=6"/>li>
<li><img src="http://placehold.it/100x100&text=7"/>li>
ul>
body>
html>
排列
總的來說就是,浮動元素會移到左側(cè)或右側(cè)。除非該元素前面還有一個浮動元素,這時它就會緊挨著前面的元素。
真正讓人迷惑的是:浮動元素會盡可能的居頂,并且垂直定位規(guī)則比水平浮動規(guī)則的優(yōu)先級更高。
在這個例子中,圖片2撐高了該行的高度,所以在放完圖片3后,仍然有足夠的垂直空間放置圖片4。
記住,當(dāng)你有一個浮動元素(不位于尾行)時,它后面的浮動元素占用的垂直空間必須大于或等于它才會觸發(fā)換行。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/2038.html
摘要:浮動為什么會有文本環(huán)繞效果產(chǎn)生這個疑問主要來自于以往的印象浮動的元素是脫離文檔流的。也就是說,浮動元素的確脫離了文檔流,因此文檔流中的塊框會無視浮動的元素,但是文本不會。 作為前端寫了很多頁面布局,但是浮動這塊一直是我似懂非懂的盲點,一方面用浮動能實現(xiàn)很多布局,另一方面浮動造成的影響又會破壞布局讓人頭疼,所以今天就特地寫篇博文解決這塊盲點。 本文主要討論以下幾個問題:1.浮動的原始用途...
摘要:浮動為什么會有文本環(huán)繞效果產(chǎn)生這個疑問主要來自于以往的印象浮動的元素是脫離文檔流的。也就是說,浮動元素的確脫離了文檔流,因此文檔流中的塊框會無視浮動的元素,但是文本不會。 作為前端寫了很多頁面布局,但是浮動這塊一直是我似懂非懂的盲點,一方面用浮動能實現(xiàn)很多布局,另一方面浮動造成的影響又會破壞布局讓人頭疼,所以今天就特地寫篇博文解決這塊盲點。 本文主要討論以下幾個問題:1.浮動的原始用途...
摘要:浮動浮動的框可以向左或向右移動,直到它的外邊緣碰到包含框或另一個浮動框的邊框為止。由于浮動框不在文檔的普通流中,相當(dāng)于不占用空間,所以文檔的普通流中的塊框表現(xiàn)得就像浮動框不存在一樣。 CSS浮動 浮動的框可以向左或向右移動,直到它的外邊緣碰到包含框或另一個浮動框的邊框為止。由于浮動框不在文檔的普通流中,相當(dāng)于不占用空間,所以文檔的普通流中的塊框表現(xiàn)得就像浮動框不存在一樣。 CSS ...
摘要:那我們舉個栗子當(dāng)先聲明一個元素向左浮動時,由于脫離文檔流,這個元素的右邊就會空出一片空間,空間的長寬與浮動元素長寬相同。總結(jié)總結(jié)下來,浮動與清除浮動的順序關(guān)系如下設(shè)置元素浮動,元素脫離文檔流,不計算高度。 本文主要探討兩個問題: 為什么CSS設(shè)置浮動會引起父元素塌陷 為什么設(shè)置clear:both能清除浮動,并撐開父元素。 起因 CSS的浮動,算是我在寫網(wǎng)頁時用的最多的屬性之一。但...
摘要:實驗最基本測驗浮動實驗對應(yīng)結(jié)果實驗結(jié)果分析因為為塊標簽,而且處于同一文檔流當(dāng)中,固會向下排列。實驗左浮動,右浮動,左浮動浮動實驗結(jié)果實驗結(jié)果分析左浮動,所以失去塊級作用,并且脫離標準文檔流,因此在第一行最左邊。 其實CSS浮動原理就三句話,不像網(wǎng)上的某些文章說的天花亂墜! 浮動必會脫離文檔流 浮動會失去塊級作用 浮動只在自己所在位置那行向左或者向右浮動 請仔細理解上面這三句話,下面...
閱讀 713·2023-04-25 19:43
閱讀 3910·2021-11-30 14:52
閱讀 3784·2021-11-30 14:52
閱讀 3852·2021-11-29 11:00
閱讀 3783·2021-11-29 11:00
閱讀 3869·2021-11-29 11:00
閱讀 3558·2021-11-29 11:00
閱讀 6105·2021-11-29 11:00