box-sizing: content-box; // W3C盒模型標(biāo)準(zhǔn)box-sizing: border-box; // IE盒模型標(biāo)準(zhǔn)盒子一些相關(guān)寬度clientWidth = width+左右paddingoffsetWidth = width + 左右padding + 左右boderscrollWidth:獲取指定標(biāo)簽內(nèi)容層的真實(shí)寬度(可視區(qū)域?qū)挾?被隱藏區(qū)域?qū)挾龋┻吔缢?strong>CSS 中存在一個(gè) margin collapse , 即邊界塌陷或者說邊界重疊 。只有普通文檔流中塊框的垂直外邊距才會(huì)發(fā)生外邊距合并 。行內(nèi)框、浮動(dòng)框或絕對(duì)定位之間的外邊距不會(huì)合并 。
并排 DIV 邊界塌陷(兄弟)對(duì)于上下兩個(gè)并排的 DIV 塊而言 , 上面 DIV 的 margin-bottom 和下面 DIV 的 margin-top 會(huì)塌陷 , 會(huì)取上下兩者 margin 里最大值作為顯示值 , 只設(shè)置單個(gè)margin 。
包含元素盒子塌陷(父子)父級(jí)div中沒有border , padding , inlinecontent , 子級(jí)div的margin會(huì)一直向上找 , 直到找到某個(gè)標(biāo)簽包括border , padding , inline content(文本)中的其中一個(gè) , 然后按此div 進(jìn)行margin 。
解決方法為父盒子設(shè)置border , 為外層添加border后父子盒子就不是真正意義上的貼合 (可以設(shè)置成透明:border: 1px solid transparent)為父盒子添加overflow: hidden;為父盒子設(shè)定padding值;為父盒子添加position:fixed;負(fù)值作用負(fù) marign實(shí)現(xiàn)元素的水平垂直居中負(fù) marign隱藏列表 li 首尾多余的邊框負(fù) text-indent 實(shí)現(xiàn)文字的隱藏負(fù)的 z-index 參與層疊上下文排序定位中的left、right、top、bottomposition 定位static(普通流定位)默認(rèn)定位
relative(相對(duì)定位)相對(duì)本元素的左上角進(jìn)行定位(相對(duì)于自身位置進(jìn)行定位) , 本元素需要設(shè)置position為relative , top、left、bottom、right都可以有值 。雖然經(jīng)過定位后 , 位置可能會(huì)移動(dòng) , 但是本元素并沒有脫離文檔流 , 還占有原來的頁面空間 。absolute(絕對(duì)定位)相對(duì)于祖代中有relative(相對(duì)定位)并且離本元素層級(jí)關(guān)系上是最近的元素的左上角進(jìn)行定位 , 如果在祖代元素中沒有有relative定位的 , 就默認(rèn)相對(duì)于body進(jìn)行定位 。元素定位后生成一個(gè)塊級(jí)框 , 而不論原來它在正常流中生成何種類型的框 。絕對(duì)定位是脫離文檔流的 , 與浮動(dòng)定位是一樣的效果 , 會(huì)壓在非定位元素的上方 。fixed(固定定位)類似于absolute定位 , 但是是相對(duì)于瀏覽器窗口進(jìn)行定位
inherit繼承父級(jí)元素position屬性值
sticky (額外補(bǔ)充)粘性的-集合了flex和relative,參考?xì)⒘藗€(gè)回馬槍 , 還是說說position:sticky吧
float浮動(dòng)有兩個(gè)取值:left(左浮動(dòng))和right(右浮動(dòng)) 。浮動(dòng)的框可以向左或向右移動(dòng) , 直到它的外邊緣碰到包含框或另一個(gè)浮動(dòng)框的邊框?yàn)橹?。由于浮動(dòng)框不在文檔的普通流中 , 所以文檔的普通流中的塊框表現(xiàn)得就像浮動(dòng)框不存在一樣 。優(yōu)點(diǎn)最初的優(yōu)點(diǎn)就是在圖文混排的時(shí)候可以很好的使文字周圍在圖片周圍 。另外當(dāng)元素浮動(dòng)了起來之后 , 它具有塊級(jí)元素的一些性質(zhì)例如可以設(shè)置寬高等 , 但它與inline- block還是有一些區(qū)別的 , 第一個(gè)就是關(guān)于橫向排序的時(shí)候 , float可以設(shè)置方向而inline-block方向是固定的;還有一個(gè)就是inline-block在使用時(shí)有時(shí)會(huì)有空白間隙的問題 。
缺點(diǎn)最明顯的缺點(diǎn)就是浮動(dòng)元素一旦脫離了文檔流 , 就無法撐起父元素 , 會(huì)造成父級(jí)元素高度塌陷為0(盒子塌陷) ?!?注意:設(shè)置元素浮動(dòng)后 , 該元素的display值會(huì)變?yōu)閎lock
清除浮動(dòng)(*)盒子大小寫死 , 給每個(gè)盒子設(shè)定固定的width和height , 直到合適為止 , 非自適應(yīng)父級(jí)元素設(shè)置高度父級(jí)元素觸發(fā)BFC(Float , Overflow: Hidden | Visible , Display: Flex | Grid)<div class="parent" style="overflow:hidden"><div class="f"></div></div>添加額外標(biāo)簽<div class="parent">//添加額外標(biāo)簽并且添加clear屬性<div class="f"></div></div><div style="clear:both"></div>建立偽類選擇器清除浮動(dòng)(推薦)//添加:after偽元素.parent:after{content: ''; /* 設(shè)置添加子元素的內(nèi)容是空 */display: block; /* 設(shè)置添加子元素為塊級(jí)元素 */height: 0; /* 設(shè)置添加的子元素的高度0 */visibility: hidden; /* 設(shè)置添加子元素看不見 */clear: both; /* 設(shè)置clear:both */}<div class="parent"><div class="f"></div></div>display 布局值描述none元素會(huì)被隱藏 , 不顯示inline元素會(huì)被設(shè)置為內(nèi)聯(lián)元素 , 內(nèi)部按行從左向右排列(元素前后沒有換行符)block元素會(huì)被設(shè)置為塊級(jí)元素 , 內(nèi)部按列從上到下排列(元素前后帶有換行符)inline-block元素會(huì)被設(shè)置為行內(nèi)塊級(jí)元素 , 不會(huì)獨(dú)占一行的塊級(jí)元素list-item元素會(huì)作為列表顯示table元素會(huì)作為塊級(jí)表格來顯示(類似table) , 表格前后帶有換行符flex元素會(huì)進(jìn)入flex布局模式
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助:- 垂直居中的多種方式 html中div水平居中
- 三個(gè)字大氣響亮公司的名字 有什么三個(gè)字大氣響亮公司的名字
- 男性常做三個(gè)動(dòng)作有助強(qiáng)身抗衰
- 華為智慧屏怎么投屏?這三個(gè)方法完美解決! 用三個(gè)方法解決華為智慧屏投屏
- 乒乓球正手發(fā)力的三個(gè)重要環(huán)節(jié)
- 橄欖球在中國的三個(gè)階段
- 這三個(gè)方法送給大家 微信聊天記錄刪了怎么恢復(fù)找回來
- 荒天帝娶的三個(gè)老婆結(jié)局誰最慘 石昊三個(gè)老婆的結(jié)局
- 安全風(fēng)險(xiǎn)評(píng)估的三個(gè)要素 信息系統(tǒng)安全風(fēng)險(xiǎn)評(píng)估指南
- 四大神獸被誰吃了(上古四大神獸死了哪三個(gè),死在哪里
