国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

html+css 浮動、清除浮動、什么是BFC?、如何開啟BFC

這篇具有很好參考價值的文章主要介紹了html+css 浮動、清除浮動、什么是BFC?、如何開啟BFC。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

浮動

介紹:

  • 其實(shí)早期的浮動是用來文字環(huán)繞圖片效果,但是后來發(fā)現(xiàn)浮動還可以設(shè)置頁面布局問題

  • 塊元素在文檔流中默認(rèn)垂直排列,如果希望塊元素在頁面中水平排列,可以使塊元素脫離文檔流

特點(diǎn):

  • 哪個元素設(shè)置浮動,哪個元素就會脫離文檔流

  • 如果給上邊的元素設(shè)置浮動時,下邊的元素就會跑到上邊元素的位置上,上邊元素會覆蓋住下邊的元素(原因是上面的元素已經(jīng)脫離了文檔流,不占據(jù)位置)

  • 脫離文檔流的元素,默認(rèn)在父元素的頂部,不會超出父元素的內(nèi)容

  • 脫離文檔流的元素不再區(qū)分塊和行內(nèi),統(tǒng)一會變成行內(nèi)塊

  • 無論浮動的元素是右還是左浮動,下面的元素都會默認(rèn)朝左上角

  • 如果父元素設(shè)置了padding,那么浮動的子元素不會超出padding以外

  • 元素浮動主要就是為了元素之間在一行排列(頁面布局問題)

  • 浮動的元素并不是根據(jù)上下排列的順序來設(shè)置左右浮動,每個元素可以任意設(shè)置浮動位置

  • 如果上下元素都浮動了,他們就會按照順序進(jìn)行排列

  • 如果上邊有元素未設(shè)置浮動,下邊設(shè)置浮動的元素會被擋住

清除浮動

clear屬性

清除浮動,指定段落的左側(cè)或右側(cè)不允許浮動的元素

屬性 描述
right 清除向右浮動的元素
left 清除向左浮動的元素
both 清除左右浮動的元素

方法一:額外標(biāo)簽法(w3c提出,不推薦)

是給最后一個浮動的元素后面添加一個空標(biāo)簽,給空標(biāo)簽設(shè)置clear屬性清除浮動

原理:

額外標(biāo)簽法主要就是調(diào)整額外標(biāo)簽的自身,通過調(diào)整自身來使自己不要和浮動元素排列在一起。

缺點(diǎn):

如果頁面中出現(xiàn)很多的浮動,就需要添加很多空標(biāo)簽清除浮動,就會導(dǎo)致很繁瑣,所以不推薦

方法二:給父元素添加overflow屬性(不推薦)

給父元素添加overflow屬性非visible屬性值(auto、scroll、hidden)

缺點(diǎn):

如果子元素內(nèi)容過多會出現(xiàn)隱藏問題,或者頁面布局發(fā)生改變,不常用此屬性

方法三:給父元素設(shè)置after偽元素

偽元素創(chuàng)建的元素是行內(nèi)元素

其實(shí)原理和額外標(biāo)簽法類似

 ? ? ? ?/*只寫一個冒號是為了兼容其他瀏覽器不支持::*/ ? ? 
 ? ? ?.clearfix:after {
 ? ? ? ? ? ?/*偽元素創(chuàng)建的元素是行內(nèi)元素*/
 ? ? ? ? ? ?/*content值要加一個小點(diǎn),為了防止低版本瀏覽器解析時出現(xiàn)空隙問題*/
 ? ? ? ? ? ?content: ".";
 ? ? ? ? ? ? /* 轉(zhuǎn)化為塊元素*/
 ? ? ? ? ? ?display: block;
 ? ? ? ? ? ?height: 0;
 ? ? ? ? ? ?/*隱藏content里面的小點(diǎn)*/
 ? ? ? ? ? ?visibility: hidden;
 ? ? ? ? ? ?/*清除浮動*/
 ? ? ? ? ? ?clear: both;
 ? ? ?  }
 ? ? ? ? ? ?/*以下是為低版本瀏覽器做的適配*/
 ? ? ? .clearfix {
 ? ? ? ? ?  *zoom: 1;
 ? ? ? ? ? ?/*  星號代表了只有ie6和ie7才會解析這段代碼,zoom是ie6和ie7的清除浮動方法  */
 ? ? ?  }

方法四:給父元素添加雙偽元素after before (推薦)

?.clearfix:before,
 ? ? ? ?.clearfix:after {
 ? ? ? ? ? ?content: "";
 ? ? ? ? ? ?display: table;
 ? ? ? ? ? ?/*觸發(fā)BFC*/
 ? ? ? ? ? ?clear: both;
 ? ? ?  }

BFC

頁面元素中的隱含屬性:Block Formatting Context 即塊格式化上下文,簡稱BFC

當(dāng)開啟元素的BFC以后,元素會變成一個獨(dú)立的布局區(qū)域,不會在布局上影響到外面的元素

BFC 理解為一個封閉的大箱子,箱子內(nèi)部的元素不會影響到外部。

開啟BFC后,元素將會具有如下的特性:
  1. 父元素的垂直外邊距不會和子元素重疊

  2. 開啟BFC的元素不會被浮動元素所覆蓋

  3. 開啟BFC的元素可以包含浮動的子元素(可解決高度塌陷)

如何開啟元素的BFC
  1. 設(shè)置元素浮動(不推薦)

    • 使用這種方式開啟,雖然可以撐開父元素,但是會導(dǎo)致父元素的寬度丟失

    • 而且使用這種方式也會導(dǎo)致下邊的元素上移,不能解決問題

  2. 設(shè)置元素為inline-block(不推薦)

    • 可以解決問題,但是會導(dǎo)致寬度丟失,不推薦使用這種方式

  3. 將元素的overflow設(shè)置為一個非visible的值 (推薦)

    • scroll、auto、hidden

  4. 設(shè)置元素絕對定位

    • 元素也會脫離文檔流,雖然可以撐開父元素,但是會導(dǎo)致父元素的寬度丟失

    • 而且使用這種方式也會導(dǎo)致下邊的元素上移,不能解決問題

推薦方式:將overflow設(shè)置為hidden是副作用最小的開啟BFC的方式文章來源地址http://www.zghlxwxcb.cn/news/detail-785207.html

到了這里,關(guān)于html+css 浮動、清除浮動、什么是BFC?、如何開啟BFC的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【CSS】網(wǎng)站 網(wǎng)格商品展示 模塊制作 ( 清除浮動需求 | 沒有設(shè)置高度的盒子且內(nèi)部設(shè)置了浮動 | 使用雙偽元素清除浮動 )

    【CSS】網(wǎng)站 網(wǎng)格商品展示 模塊制作 ( 清除浮動需求 | 沒有設(shè)置高度的盒子且內(nèi)部設(shè)置了浮動 | 使用雙偽元素清除浮動 )

    繪制的如下模塊 : 在上面的盒子中 , 沒有設(shè)置高度 , 只設(shè)置了一個 1215px 的寬度 ; 在列表中每個列表項(xiàng)都設(shè)置了 浮動 ; ? 之前的盒子都設(shè)置了高度 , 因此其中雖然設(shè)置了浮動 , 但不會影響到后續(xù)的頁面布局 ; 上述模型中 , 沒有設(shè)置高度 , 并且設(shè)置了浮動 , 如果不清除浮動 , 后

    2024年02月10日
    瀏覽(29)
  • 【CSS】課程網(wǎng)站 網(wǎng)格商品展示 模塊制作 ③ ( 清除浮動需求 | 沒有設(shè)置高度的盒子且內(nèi)部設(shè)置了浮動 | 使用雙偽元素清除浮動 )

    【CSS】課程網(wǎng)站 網(wǎng)格商品展示 模塊制作 ③ ( 清除浮動需求 | 沒有設(shè)置高度的盒子且內(nèi)部設(shè)置了浮動 | 使用雙偽元素清除浮動 )

    如果盒子沒有設(shè)置高度 , 并且盒子中還設(shè)置了浮動 , 如上一篇博客 【CSS】課程網(wǎng)站 網(wǎng)格商品展示 模塊制作 ② ( 網(wǎng)格商品展示盒子模型測量及樣式 | 處理列表間隙導(dǎo)致意外換行問題 | 代碼示例 ) 中繪制的如下模塊 : 在上面的盒子中 , 沒有設(shè)置高度 , 只設(shè)置了一個 1215px 的寬度

    2023年04月09日
    瀏覽(21)
  • HTML5+CSS3學(xué)習(xí)筆記(九)前端頁面六大布局(文檔流布局、浮動布局、定位布局、表格布局、彈性布局、網(wǎng)格布局)

    HTML5+CSS3學(xué)習(xí)筆記(九)前端頁面六大布局(文檔流布局、浮動布局、定位布局、表格布局、彈性布局、網(wǎng)格布局)

    本系列更多文章,可以查看專欄 HTML+CSS學(xué)習(xí)筆記 塊級元素自上至下垂直排列,行內(nèi)元素自左至右水平排列 塊級元素獨(dú)占一行,行內(nèi)元素不會另起一行 默認(rèn)情況下,height和width決定內(nèi)容區(qū)的大?。粌?nèi)容區(qū)、內(nèi)邊距和邊框構(gòu)成可見區(qū)域的大??;外邊距決定元素的位置 更多內(nèi)容可

    2024年02月02日
    瀏覽(70)
  • 前端系列第4集-解釋下浮動和它的工作原理,清除浮動的方法

    浮動是CSS布局中的一個重要概念,它可以讓元素脫離標(biāo)準(zhǔn)文檔流,并且可以讓其他元素環(huán)繞在其周圍。通常情況下,浮動用于創(chuàng)建多列布局或者圖像與文字混排的效果。比如,我們可以使用浮動來實(shí)現(xiàn)一個左側(cè)導(dǎo)航欄、右側(cè)主體內(nèi)容的頁面布局。 浮動的工作原理很簡單。當(dāng)一

    2023年04月08日
    瀏覽(33)
  • Web網(wǎng)頁制作-知識點(diǎn)(4)——CSS盒子模型、彈性盒模型(flex box)、文檔流、浮動、清除浮動、定位、圓角、陰影

    Web網(wǎng)頁制作-知識點(diǎn)(4)——CSS盒子模型、彈性盒模型(flex box)、文檔流、浮動、清除浮動、定位、圓角、陰影

    目錄 CSS盒子模型 概念 彈性盒模型(flex?box) 內(nèi)容 父元素上的屬性 display屬性 flex-direction屬性 justify-content屬性 align-items屬性 子元素上的屬性 flex 文檔流(標(biāo)準(zhǔn)流) 浮動 定義 浮動的原理 清除浮動 浮動的副作用 父元素設(shè)置高度 overflow清除浮動 偽對象方式 定位 定義 相對定位

    2024年02月11日
    瀏覽(94)
  • 前端三件套之css(5) BFC

    目錄 什么是BFC 能觸發(fā)BFC的標(biāo)簽或?qū)傩?BFC布局的標(biāo)準(zhǔn)規(guī)則 BFC全稱(Block formatting context) 意為:\\\"塊級格式化上下文\\\"。? 它就像我們學(xué)校分班級一樣,雖然都是一個學(xué)校,但是每個班是獨(dú)立的,不相干擾的。 例如上述的三個div,\\\"main\\\" 有兩個子標(biāo)簽 \\\"left\\\" 和 \\\"right\\\" ,BFC的作用就是分

    2024年02月12日
    瀏覽(23)
  • CSS中的BFC是什么?

    BFC(Block Formatting Context)塊格式化上下文 ,簡單來說就是頁面上的一個隔離的獨(dú)立容器,容器里面的子元素不會影響到外面的元素。 我們經(jīng)常在寫CSS時不知不覺就會觸發(fā)了BFC: 根元素,即HTML元素 浮動元素:元素的float不是none,指定float為left或者right就可以創(chuàng)建BFC 絕對定位

    2024年02月14日
    瀏覽(17)
  • html&CSS-----浮動

    html&CSS-----浮動

    ? 目錄 前言: ?浮動 1.浮動的效果? 2.浮動的特點(diǎn) ?3.浮動的寫法 4.浮動的原理 5.浮動的作用 ?6.案例 7.浮動的缺陷與解決方式 浮動問題? 解決方式 ?8.補(bǔ)充說明 ? ? ? ? 浮動是html里面重要的一部分,前面我們學(xué)習(xí)了三種元素的類型(塊級元素,行內(nèi)元素和行內(nèi)塊元素),今

    2024年02月16日
    瀏覽(13)
  • 前端中的BFC是什么?

    前端中的BFC是什么?

    BFC(Block formatting context)直譯為\\\"塊級格式化上下文\\\"。它是一個獨(dú)立的渲染區(qū)域,只有Block-level box參與, 它規(guī)定了內(nèi)部的Block-level Box如何布局,并且與這個區(qū)域外部毫不相干。 MDN給出的解釋是:BFC是Web頁面的可視CSS渲染的一部分,是塊盒子的布局過程發(fā)生的區(qū)域,也是浮動元素

    2023年04月09日
    瀏覽(22)
  • HTML--CSS--浮動布局及定位布局

    HTML--CSS--浮動布局及定位布局

    塊元素獨(dú)占一行 行內(nèi)元素在有多個的時候,就是從左到右排在一行 塊元素包括: div , p , hr 行內(nèi)元素: span , i , img float 屬性: left 向左 right 向右 作用我目前看起來就是浮動元素的寬度是由內(nèi)容決定的,而不是占滿 效果: 但是需要注意,如果給定的寬度不夠,效果會偏差:

    2024年01月19日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包