【前端面經】BFC

BFC

  • BFC
    • 什么是 BFC?
    • 元素開啟 BDC 后的特殊布局效果
    • 元素開啟 BFC 的方式

BFC

什么是 BFC?

  1. 官方解釋:A block formatting context (BFC) is a part of a visual CSS rendering of a web page. It’s the region in which the layout of block boxes occurs and in which floats interact with other elements.
  2. 通俗理解:BFC(塊級格式化上下文)是一種在布局上具有特定效果的渲染區域。創建/開啟 BFC 意味著元素被激活了這種特殊的布局效果,從而使其內部的元素布局和浮動元素的交互方式與默認情況有所不同。

元素開啟 BDC 后的特殊布局效果

  1. 官方解釋
    • contain internal floats.
    • suppress margin collapsing.
    • exclude external floats.
  2. 通俗理解
    • 元素中的子元素浮動時,自身高度不會塌陷
    • 元素中的子元素不會產生 margin 塌陷問題
    • 元素不會被外部的浮動元素所覆蓋

元素開啟 BFC 的方式

常見的元素開啟 BFC 的方式如下,

  • 根元素 <html> ==> The root element of the document ().
  • 浮動元素 ==> Floats (elements where float isn’t none).
  • 絕對定位或固定定位的元素 ==> Elements where position is absolute or fixed.
  • 行內塊元素 ==> Inline-blocks (elements with display: inline-block).
  • 表格單元格 ==> Table cells (elements with display: table-cell, which is the default for HTML table cells).
  • 表格標題 ==> Table captions (elements with display: table-caption, which is the default for HTML table captions).
  • overflow: hidden/scroll/auto 的元素 ==> Block elements where overflow has a value other than visible and clip.
  • 伸縮項目 ==> Flex items (direct children of the element with display: flex or inline-flex) if they are neither flex nor grid nor table containers themselves.
  • 多列容器 ==> Multicol containers (elements where column-count or column-width isn’t auto, including elements with column-count: 1).
  • column-span: all 的元素 ==> column-span: all should always create a new formatting context, even when the column-span: all element isn’t contained by a multicol container
  • display: flow-root 的元素,副作用最低! ==> display: flow-root.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/13546.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/13546.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/13546.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

什么是谷歌爬蟲?

其實就是谷歌用來瀏覽網絡信息的一個自動化程序&#xff0c;他們會在你的網站爬取&#xff0c;尋找和搜集信息&#xff0c;谷歌爬蟲可以說決定著一個網站在谷歌的生死 谷歌爬蟲的作用機制就在于發現新網站以及新網頁&#xff0c;然后他會把網頁的內容帶回去&#xff0c;更新到…

PikaUnsafe upfileupload

1.client check 客戶端檢測&#xff0c;前端js檢測&#xff0c;禁用js和修改后綴名即可。 php格式不能上傳&#xff0c;我們修改后綴上傳。 蟻劍成功連接。 2.MIME type 這個就是 content-type 規定上傳類型&#xff0c;上面的方法也能成功&#xff0c;也可以修改 conten-ty…

面試框架【面試準備】

前言 2023-9-12 12:12:04 2023-09-14 16:13:04 公開發布于 2024-5-22 00:16:21 以下內容源自《【面試準備】》 僅供學習交流使用 版權 禁止其他平臺發布時刪除以下此話 本文首次發布于CSDN平臺 作者是CSDN日星月云 博客主頁是https://blog.csdn.net/qq_51625007 禁止其他平…

奇偶數遞增遞減-第13屆藍橋杯選拔賽Python真題精選

[導讀]&#xff1a;超平老師的Scratch藍橋杯真題解讀系列在推出之后&#xff0c;受到了廣大老師和家長的好評&#xff0c;非常感謝各位的認可和厚愛。作為回饋&#xff0c;超平老師計劃推出《Python藍橋杯真題解析100講》&#xff0c;這是解讀系列的第70講。 奇偶數遞增遞減&a…

vite+ts+mock+vue-router+pinia實現vue的路由權限

0.權限管理 前端的權限管理主要分為如下&#xff1a; 接口權限路由權限菜單權限按鈕權限 權限是對特定資源的訪問許可&#xff0c;所謂權限控制&#xff0c;也就是確保用戶只能訪問到被分配的資源 1.項目搭建 創建vite項目 yarn create vite配置別名 npm install path -…

4. C++入門:內聯函數、auto關鍵字、范圍for及nullptr

內聯函數 概念 以inline修飾的函數叫做內聯函數&#xff0c;編譯時C編譯器會在調用內聯函數的地方展開&#xff0c;沒有函數調用建立棧幀的開銷&#xff0c;內聯函數提升程序運行的效率 對比C的宏 C語言不足&#xff1a;宏 #define ADD(x, y) ((x)(y))int main() {int ret…

python實現520表白圖案

今天是520哦&#xff0c;作為程序員有必要通過自己的專業知識來向你的愛人表達下你的愛意。那么python中怎么實現繪制520表白圖案呢&#xff1f;這里給出方法&#xff1a; 1、使用圖形庫&#xff08;如turtle&#xff09; 使用turtle模塊&#xff0c;你可以繪制各種形狀和圖案…

Docker 安裝kingbase V8r6

下載 官網下載&#xff0c;注意&#xff1a;這里下載 Docker 版本v8r6 安裝 # 導入鏡像 docker load -i kingbase.tar# 重命名 docker tag [image-name]:[tag] [new-image-name]:[new-tag]# 刪除 docker rmi [image-name]:[tag]# 創建容器 docker run -tid \ --privileged \…

python實現繪制煙花代碼

在Python中&#xff0c;我們可以使用多個庫來繪制煙花效果&#xff0c;例如turtle庫用于簡單的繪圖&#xff0c;或者更復雜的庫如pygame或matplotlib結合動畫。但是&#xff0c;由于turtle庫是Python自帶的&#xff0c;我們可以使用它來繪制一個簡單的煙花效果。 下面是一個使…

Stable Diffusion AMD加速方法-ZLUDA重出江湖

目前幾大開源的Stable Diffusion平臺&#xff0c;更新速度都慢了&#xff0c;一個是沒有太多新技術出現&#xff0c;新出的基礎模型也都不完整開源了&#xff08;API調用&#xff09;&#xff0c;能整的功能&#xff0c;也都整得差不多了。然后一群AMD死忠還在等著有一個能有一…

【前端】使用 Canvas 實現貪吃蛇小游戲

使用 Canvas 實現貪吃蛇小游戲 在這篇博客中&#xff0c;我們將介紹如何使用 HTML5 Canvas 和 JavaScript 實現一個簡單的貪吃蛇&#xff08;Snake&#xff09;小游戲。這個項目是一個基礎的游戲開發練習&#xff0c;它可以幫助你理解如何在 Canvas 上繪圖、如何處理用戶輸入以…

Laravel(Lumen8) + Supervisor 實現多進程redis消息隊列

相關文章:Supervisor守護進程工具安裝與使用 1、通用消息隊列 /App/Job/CommonJob.php: <?phpnamespace App\Jobs; use Illuminate\Support\Facades\Log; use Illuminate\Support\Str;class CommonJob extends Job {public $timeout; //超時時間protected $data; //隊列…

Android:OkHttp網絡請求框架的使用

目錄 一&#xff0c;OkHttp簡介 二&#xff0c;OkHttp請求處理流程 三&#xff0c;OkHttp環境配置 四&#xff0c;OkHttp的使用 1.get網絡請求 2.post上傳表單數據 3.post上傳json格式數據 4.文件上傳 5.文件下載 一&#xff0c;OkHttp簡介 OkHttp是square公司推出的一…

npm 源管理工具 nrm

npm 源管理工具 nrm 安裝(可能很慢, 多試幾次) npm install -g nrm查看可選擇源列表 nrm ls切換源 nrm use <registry>如: nrm use taobao

rust的版本問題,安裝問題,下載問題

rust的版本、安裝、下載問題 rust版本問題&#xff0c; 在使用rust的時候&#xff0c;應用rust的包&#xff0c;有時候包的使用和rust版本有關系。 error: failed to run custom build command for pear_codegen v0.1.2 Caused by: process didnt exit successfully: D:\rus…

鴻蒙全面開發指南:入門、生態安全與資源支持

鴻蒙全面開發指南&#xff1a;入門、生態安全與資源支持 本文全面梳理了鴻蒙操作系統的開發入門流程&#xff0c;涵蓋了開發環境準備、工具使用、項目創建、模擬器配置到應用安全設計的各個方面。通過本文&#xff0c;讀者不僅能夠了解鴻蒙開發的基本步驟&#xff0c;也能深入理…

Aspose.PDF功能演示:在 JavaScript 中將 TXT 轉換為 PDF

您是否正在尋找一種在 JavaScript 項目中將純文本文件從TXT無縫轉換為PDF格式的方法&#xff1f;您來對地方了&#xff01;無論您是要構建 Web 應用程序、創建生產力工具&#xff0c;還是只是希望簡化工作流程&#xff0c;直接從 JavaScript 代碼中將 TXT 轉換為 PDF 的功能都可…

第3天 Web源碼拓展_小迪網絡安全筆記

1.關于web源碼目錄結構 #數據庫配置文件 后臺目錄 模板目錄 數據庫目錄 1.1數據庫配置文件: 1.1就拿wordpress來說,先到官網下載源碼:Download – WordPress.org,解壓源碼之后: 2.2找到目錄下名為 wp-config-sample.php的文件,這就是數據庫配置文件: 設想: 我們在滲透…

FOURIER NEURAL OPERATOR FOR PARAMETRIC PARTIAL DIFFERENTIAL EQUATIONS

參數偏微分方程的傅里葉神經算子 論文鏈接&#xff1a;https://arxiv.org/abs/2010.08895 項目鏈接&#xff1a;https://github.com/neuraloperator/neuraloperator 作者博客&#xff1a;https://zongyi-li.github.io/blog/2020/fourier-pde/ 參數偏微分方程的傅里葉神經算子…

本地部署Terraria泰拉瑞亞私服并通過內網穿透生成公網地址遠程聯機

文章目錄 前言1. 下載Terraria私服2. 本地運行Terraria 私服3. 本地Terraria私服連接4. Windwos安裝Cpolar 工具5. 配置Terraria遠程聯機地址6. Terraria私服遠程聯機7. 固定遠程聯機地址8. 固定的聯機地址測試 前言 本文將為你詳細介紹在本地如何運行泰拉瑞亞本地私服和結合C…