亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

前端 - margin的問題,那個老哥幫我解釋下

瀏覽:126日期:2024-05-19 13:41:23

問題描述

<!DOCTYPE html><html lang='en'><head> <title>test</title> <style type='text/css'>* { margin: 0; padding: 0;}.a{ height:48px; background: #eee;}.b{ height:520px; background: #ff4949;}.c{ width:90%; height:300px; margin:20px auto; background: #fff;} </style></head><body><p class='a'></p><p class='b'> <p class='c'></p></p></body></html>

前端 - margin的問題,那個老哥幫我解釋下

p.c 不是應該被紅色環繞嗎?煩請那個老哥解釋下。

問題解答

回答1:

因為在BFC中,兩相鄰(兄弟或父子)、沒有邊框且沒有padding,元素的margin-top與其第一個常規文檔流的子元素的margin-top,會產生marign-collapse(外邊距折疊)。

你給b加邊框,

border: 1px solid transparent;

或者加padding,

padding: 1px 0;

都能消除。

或者,你可以給b加 overflow: hidden;。

可以參考:深入理解BFC和Margin Collapse

回答2:

你在.b中添加個overflow: hidden;就可以了。

因為overflow 使用除了 visible 以外的值(hidden,auto,scroll)會觸發BFC。什么是BFC?Block Formatting Contexts (塊級格式化上下文)具有 BFC 的元素可以看作是隔離了的獨立容器,容器里面的元素不會在布局上影響到外面的元素,并且 BFC 具有普通容器沒有的一些特性,例如可以包含浮動元素,上文中的第二類清除浮動的方法(如 overflow 方法)就是觸發了浮動元素的父元素的 BFC ,使到它可以包含浮動元素,從而防止出現高度塌陷的問題。

回答3:

overflow: hidden; 你把這句話加到 p.b 上。

回答4:

搜一下 “子元素margin影響父元素”

回答5:

這個叫外邊距重疊吧,子級元素的外邊距會影響父級元素,并且這兩的外邊距大整個容器的外邊距就以大的為準。這個時候應該選擇觸發BFC,BFC是什么前面幾位說的很清楚了,觸發BFC的情況有:

根元素

float屬性不為none;

position為absolute或fixed;

display為inline-block, table-cell, table-caption, flex, inline-flex;

overflow不為visible;

解決辦法:

如果你給父級加上overflow:hidden,或者加上透明邊框就可以解決了。

主站蜘蛛池模板: 欧美人交性视频在线香蕉 | 91香蕉国产线观看免 | 亚洲男女在线 | 日韩一区二区在线播放 | 毛片精品 | 亚洲影院在线 | 69欧美另类xxxxx高清 | 免费va国产高清不卡大片 | 看真人一一级毛片 | 免费一区二区三区视频狠狠 | 特级片视频 | 美女福利视频午夜在线 | 不卡一级毛片免费高清 | 欧美另类videosgrstv变态 欧美另类高清xxxxx | 亚洲欧美另类专区 | 看美国毛片 | 国产成人性色视频 | 日韩三级黄 | 欧美一区=区三区 | 在线观看a网站 | 视频精品一区二区三区 | 免费一级毛片在线播放视频 | 爱福利极品盛宴 | 欧美亚洲国产精品久久久久 | 亚洲永久中文字幕在线 | 国产超薄肉色丝袜足j | 欧美国产成人在线 | 免费观看毛片的网站 | 欧美一级乱理片免费观看 | 黄a视频 | 亚洲精品成人一区 | 免费一级毛片在线播放欧美 | 国产精品视频久久 | 国产亚洲精品九九久在线观看 | 欧美一区二区aa大片 | 国产免费久久精品久久久 | avove在线播放 | 一级做a爰全过程免费视频毛片 | 久久久国产成人精品 | 成人一a毛片免费视频 | 天堂影院jav成人天堂免费观看 |