摘要:的作用了解完這兩種盒模型后,在介紹一下,他一共有種值,,。就是繼承父元素的值,這里不做介紹。比如我們想做一個(gè)內(nèi)邊距,邊框?yàn)椋罱K包括邊框?qū)挾葹榈模暗淖龇ㄊ窍人愠鰞?nèi)容寬。
懂得如何運(yùn)用box-sizing之前,必須需要了解一下常規(guī)盒模型和怪異盒模型(IE盒模型)。
我們都知道盒模型從里到外主要包括:content,padding,border,margin。如下圖:
兩種盒模型的寬度width
標(biāo)準(zhǔn)盒模型的width = content
怪異盒模型的width = content + padding*2 + border*2
也就是說(shuō),一個(gè)div,他的內(nèi)容寬content為100px,padding為10px,border為1px,margin為10px,那么在標(biāo)準(zhǔn)盒模型的解析下,他的width = 100px,也就是content的寬度
而在怪異盒模型的解析下,他的width = 100px + 1px*2 + 10px*2 = 122px。
box-sizing的作用
了解完這兩種盒模型后,在介紹一下box-sizing,他一共有3種值:content-box,border-box,inherit。inherit就是繼承父元素的box-sizing值,這里不做介紹。
centent-box就是已標(biāo)準(zhǔn)盒模型的方式解析當(dāng)前盒子,即此時(shí)盒子的width = content的寬度
border-box就是已怪異盒模型的方式解析盒子,此時(shí)width = content + padding*2 + border*2
聊到這里已經(jīng)很明了了,box-sizing的作用就是規(guī)定當(dāng)前盒子已哪種方式解析當(dāng)前盒子。
使用場(chǎng)景
當(dāng)然,box-sizing在某些場(chǎng)景下,是非常好用的。比如我們想做一個(gè)內(nèi)邊距10px,邊框?yàn)?px,最終包括邊框?qū)挾葹?00px的div,之前的做法是先算出內(nèi)容寬width = 100px - 10px*2 - 2px*2 = 76px。這種方式?jīng)]問(wèn)題,但是多少有點(diǎn)繁瑣,將width的計(jì)算給以開(kāi)發(fā)人員來(lái)完成顯然是不合適的。
此時(shí)我們可以把它交給交給計(jì)算機(jī)來(lái)完成,這就需要用到box-sizing來(lái)完成。這里通過(guò)把div的box-sizing設(shè)置為border-box,我們就可以簡(jiǎn)單的將width設(shè)置為100px,其余的padding和border按照給定好的值一一填入,就可以完成這一切工作,省去了人為的計(jì)算內(nèi)容寬content的過(guò)程,減少計(jì)算量的同時(shí)減少了錯(cuò)誤率,何樂(lè)不為?
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/116738.html
摘要:盒模型的組成大家肯定都懂,由里向外盒模型是有兩種標(biāo)準(zhǔn)的,一個(gè)是標(biāo)準(zhǔn)模型,一個(gè)是模型。指定元素的寬度和高度最小最大屬性適用于的寬度和高度。盒模型的組成大家肯定都懂,由里向外content,padding,border,margin. 盒模型是有兩種標(biāo)準(zhǔn)的,一個(gè)是標(biāo)準(zhǔn)模型,一個(gè)是IE模型。 ?從上面兩圖不難看出在標(biāo)準(zhǔn)模型中,盒模型的寬高只是內(nèi)容(content)的寬高, 而在IE模型中盒模型...
摘要:用于更改用于計(jì)算元素寬度和高度的默認(rèn)的盒子模型。它有和三種取值。和屬性包括內(nèi)容,內(nèi)邊距和邊框,但不包括外邊距。所以,的解釋很符合常理。使用建議使用建議根據(jù)項(xiàng)目中的使用經(jīng)驗(yàn)和的建議,推薦將屬性設(shè)置為。個(gè)人網(wǎng)站原文鏈接屬性詳解和應(yīng)用 box-sizing用于更改用于計(jì)算元素寬度和高度的默認(rèn)的 CSS 盒子模型。它有content-box、border-box和inherit三種取值。inheri...
摘要:背景之前發(fā)現(xiàn)這個(gè)布局新屬性之后就非常喜歡,愛(ài)不釋手。語(yǔ)法取值說(shuō)明元素的寬度高度等于元素邊框?qū)挾燃由显貎?nèi)邊距加上元素內(nèi)容寬度高度即。元素的寬度高度等于元素內(nèi)容的寬度高度。 背景 之前發(fā)現(xiàn)calc這個(gè)布局新屬性之后就非常喜歡,愛(ài)不釋手。在公司的實(shí)習(xí)的時(shí)候,開(kāi)發(fā)微信端的頁(yè)面,使用了幾次calc,后來(lái)發(fā)現(xiàn)在Android的上的不支持~蛋疼。于是到處找替代方案,終于在stackoverflow...
摘要:布局在移動(dòng)端會(huì)用得比較廣泛,例如導(dǎo)航欄,菜單欄等,以支付寶,淘寶為例。看了網(wǎng)上很多關(guān)于布局,有些寫(xiě)得太亂了,也太復(fù)雜了。那么用布局,就是這樣布局上面給每個(gè)用劃分,一共分份,占,那就是占,那就是這個(gè)容易理解吧。 flex布局在移動(dòng)端會(huì)用得比較廣泛,例如導(dǎo)航欄,菜單欄等,以支付寶,淘寶APP為例。 showImg(https://segmentfault.com/img/bVbk1vO?w...
閱讀 1818·2023-04-26 02:51
閱讀 2849·2021-09-10 10:50
閱讀 3026·2021-09-01 10:48
閱讀 3592·2019-08-30 15:53
閱讀 1815·2019-08-29 18:40
閱讀 404·2019-08-29 16:16
閱讀 2023·2019-08-29 13:21
閱讀 1815·2019-08-29 11:07