HTML+CSSday04

<meta charset="utf-8">

<article class="_2rhmJa">

浮動(float)

CSS 提供了 3 種機制來設(shè)置盒子的擺放位置,分別是普通流(標準流)胡陪、浮動和定位梭稚,其中:

普通流(標準流)

  • 塊級元素會獨占一行,從上向下順序排列袜啃;常用元素:div、hr、p、h1~h6径玖、ul、ol谒养、dl挺狰、form、table
  • 行內(nèi)元素會按照順序买窟,從左到右順序排列,碰到父元素邊緣則自動換行薯定;
    常用元素:span始绍、a、i话侄、em等

浮動

讓盒子從普通流中浮起來,主要作用讓多個塊級盒子一行顯示亏推。

定位

將盒子定在瀏覽器的某一個位置——CSS 離不開定位,特別是后面的 js 特效年堆。
雖然我們前面學(xué)過行內(nèi)塊(inline-block) 但是他卻有自己的缺陷:

  1. 它可以實現(xiàn)多個元素一行顯示吞杭,但是中間會有空白縫隙
  2. 它不能實現(xiàn)左青龍右白虎的布局 盒子左右對齊

浮動(float)

概念:元素的浮動是指設(shè)置了浮動屬性的元素會

  1. 脫離標準普通流的控制
  2. 移動到指定位置。
    作用
  3. 讓多個盒子(div)水平排列成一行变丧,使得浮動成為布局的重要手段芽狗。
  4. 可以實現(xiàn)盒子的左右對齊等等..
  5. 浮動最早是用來控制圖片,實現(xiàn)文字環(huán)繞圖片的效果痒蓬。
    浮動布局實現(xiàn)三個盒子在一個水平線上挨著
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .one,
        .two{
            width: 100px;
            height: 100px;
            background-color: yellowgreen;
        }
        .one{
            float: left;
            /*width: 200px;*/
            /*height: 200px;*/
            /*border: 1px solid red;*/

        }
        .two{
            background-color: pink;
            float: left;

        }
        .three {
            width: 100px;
            height: 100px;
            background-color: blue;
            float: right;

        }
    </style>
</head>
<body>
<div class="one"></div>
<div class="two"></div>
<div class="three"></div>
</body>
</html>

浮動(float)的擴展

1). 浮動元素與父盒子的關(guān)系
  • 子盒子的浮動參照父盒子對齊
  • 不會與父盒子的邊框重疊童擎,也不會超過父盒子的內(nèi)邊距
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .father{
            width: 300px;
            height: 300px;
            background-color: skyblue;
            border: 20px solid red;
            padding: 20px;
        }
        .son{
            float: right;
            width: 150px;
            height: 150px;
            background-color: purple;
        }
    </style>

</head>
<body>
<div class="father">
    <div class="son"></div>
</div>
</body>
</html>

2). 浮動元素與兄弟盒子的關(guān)系

在一個父級盒子中,如果前一個兄弟盒子是:

  • 浮動的攻晒,那么當(dāng)前盒子會與前一個盒子的頂部對齊顾复;
  • 普通流的,那么當(dāng)前盒子會顯示在前一個兄弟盒子的下方鲁捏。
 float: left;
            width: 100px;
            height: 100px;
            background-color: red;

清除浮動

為什么要清除浮動
因為父級盒子很多情況下芯砸,不方便給高度,但是子盒子浮動就不占有位置,最后父級盒子高度為0假丧,就影響了下面的標準流盒子

  • 由于浮動元素不再占用原文檔流的位置末购,所以它會對后面的元素排版產(chǎn)生影響
  • 準確地說,并不是清除浮動虎谢,而是清除浮動后造成的影響

浮動本質(zhì)

清除浮動主要為了解決父級元素因為子級浮動引起內(nèi)部高度為0 的問題盟榴。清除浮動之后, 父級就會根據(jù)浮動的子盒子自動檢測高度婴噩。父級有了高度擎场,就不會影響下面的標準流了

清除浮動的方法

在CSS中,clear屬性用于清除浮動

  • 額外標簽法(隔墻法)
選擇器{clear:屬性值;}   clear 清除  

  • 優(yōu)點: 通俗易懂几莽,書寫方便

  • 缺點: 添加許多無意義的標簽迅办,結(jié)構(gòu)化較差

  • 父級添加overflow屬性方法

可以給父級添加: overflow為 hidden| auto| scroll  都可以實現(xiàn)。

優(yōu)點: 代碼簡潔

缺點: 內(nèi)容增多時候容易造成不會自動換行導(dǎo)致內(nèi)容被隱藏掉章蚣,無法顯示需要溢出的元素站欺。

使用after偽元素清除浮動

:after 方式為空元素額外標簽法的升級版,好處是不用單獨加標簽了
使用方法:

 .clearfix:after {  content: ""; display: block; height: 0; clear: both; visibility: hidden;  }   

  • 優(yōu)點: 符合閉合浮動思想 結(jié)構(gòu)語義化正確
  • 缺點: 由于IE6-7不支持:after纤垂,使用 zoom:1觸發(fā) hasLayout矾策。
  • 代表網(wǎng)站: 百度、淘寶網(wǎng)峭沦、網(wǎng)易等
    4).使用雙偽元素清除浮動
    使用方法:
.clearfix:before,.clearfix:after { 
  content:"";
  display:table; 
}
.clearfix:after {
 clear:both;
}
.clearfix {
  *zoom:1;
}

  • 優(yōu)點: 代碼更簡潔

  • 缺點: 由于IE6-7不支持:after贾虽,使用 zoom:1觸發(fā) hasLayout。

  • 代表網(wǎng)站: 小米吼鱼、騰訊

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蓬豁,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子菇肃,更是在濱河造成了極大的恐慌地粪,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件琐谤,死亡現(xiàn)場離奇詭異蟆技,居然都是意外死亡,警方通過查閱死者的電腦和手機笑跛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進店門付魔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人飞蹂,你說我怎么就攤上這事几苍。” “怎么了陈哑?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵妻坝,是天一觀的道長伸眶。 經(jīng)常有香客問我,道長刽宪,這世上最難降的妖魔是什么厘贼? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮圣拄,結(jié)果婚禮上嘴秸,老公的妹妹穿的比我還像新娘。我一直安慰自己庇谆,他們只是感情好岳掐,可當(dāng)我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著饭耳,像睡著了一般串述。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上寞肖,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天纲酗,我揣著相機與錄音,去河邊找鬼新蟆。 笑死觅赊,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的栅葡。 我是一名探鬼主播茉兰,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼欣簇!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起坯约,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤熊咽,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后闹丐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體横殴,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年卿拴,在試婚紗的時候發(fā)現(xiàn)自己被綠了衫仑。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡堕花,死狀恐怖文狱,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情缘挽,我是刑警寧澤瞄崇,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布呻粹,位于F島的核電站,受9級特大地震影響苏研,放射性物質(zhì)發(fā)生泄漏等浊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一摹蘑、第九天 我趴在偏房一處隱蔽的房頂上張望筹燕。 院中可真熱鬧,春花似錦衅鹿、人聲如沸撒踪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽糠涛。三九已至,卻和暖如春兼犯,著一層夾襖步出監(jiān)牢的瞬間忍捡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工切黔, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留砸脊,地道東北人。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓纬霞,卻偏偏與公主長得像凌埂,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子诗芜,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,700評論 2 354