亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

章節
問答
課簽
筆記
評論
占位
占位

css3的box-sizing

Box-sizing 是 CSS3 的Box屬性之一,那他當然也遵循CSS的Box model原理。CSS中Box model是分為兩種,第一種是W3C的標準模型,另一種是IE的傳統模型,他們相同之處都是對元素計算尺寸的模型,具體說就是對元素的width,height,padding,border以及元素實際尺寸的計算關系。

W3C的標準 Box Model:

外盒尺寸計算(元素空間尺寸)

Element空間高度 = content height + padding + border + margin
Element空間寬度 = content width + padding + border + margin

內盒尺寸計算(元素大?。?/p>

Element Height = content height + padding + border (Height為內容高度)
Element Width = content width + padding + border (Width為內容寬度)

 

IE傳統下 Box Model(IE6以下,不含 IE6 版本或“QuirksMode下IE5.5+”):

外盒尺寸計算(元素空間尺寸)

Element空間高度 = content Height + margin (Height包含了元素內容寬度,邊框寬度,內距寬度)
Element空間寬度 = content Width + margin (Width包含了元素內容寬度、邊框寬度、內距寬度)

內盒尺寸計算(元素大?。?/p>

Element Height = content Height (Height包含了元素內容寬度,邊框寬度,內距寬度)
Element Width = content Width (Width包含了元素內容寬度、邊框寬度、內距寬度)


box-sizing屬性定義盒元素尺寸的計算方法:

  • content-box:默認值,計算方法為 width/height=content,表示指定的寬度和高度僅限內容區域,邊框和內邊距的寬度不包含在內。
  • padding-box:計算方法為 width/height=content+padding,表示指定的寬度和高度包含內邊距和內容區域,邊框寬度不包含在內。
  • border-box:計算方法為 width/height=content+padding+border,表示指定的寬度和高度包含邊框、內邊距和內容區域。
  • inherit:表示繼承父元素中box-sizing屬性的值。


正常情況下offsetWidth,offsetHeigth獲取元素的尺寸是足夠了,但是某些元素比如SVG,MathML返回尺寸出錯(這里不考慮)。即便如此CSS3還增加了一個box-sizing選擇盒子模型,于是jQuery里面就引入augmentWidthOrHeight這個方法來處理因為box-sizing設置導致的尺寸問題,augmentWidthOrHeight方法其實就是對盒子模型的一個處理,所以jQuery獲取一個元素的widht/height 都是,ele.offsetWidt/offsetHeigth + augmentWidthOrHeight()方法才可以。

 

關于augmentWidthOrHeight方法

1.8增加了對css屬性box-sizing的支持,需要注意與1.7.2的區別了。
1.7.2及以前的版本無論是否定義box-sizing: border-box返回的都是盒模型中元素內容的寬度或高度,不包括padding和border。
augmentWidthOrHeight方法是特別針對盒子模型的處理,例如,假如您需要并排放置兩個帶邊框的框,可通過將 box-sizing 設置為 "border-box"。這可令瀏覽器呈現出帶有指定寬度和高度的框,并把邊框和內邊距放入框中。

任務

?不會了怎么辦
||

提問題

寫筆記

公開筆記
提交
||

請驗證,完成請求

由于請求次數過多,請先驗證,完成再次請求

加群二維碼

打開微信掃碼自動綁定

您還未綁定服務號

綁定后可得到

  • · 粉絲專屬優惠福利
  • · 大咖直播交流干貨
  • · 課程更新,問題答復提醒
  • · 賬號支付安全提醒

收藏課程后,能更快找到我哦~

使用 Ctrl+D 可將課程添加到書簽

邀請您關注公眾號
關注后,及時獲悉本課程動態

舉報

0/150
提交
取消
全部 精華 我要發布
全部 我要發布
最熱 最新
只看我的

手記推薦

更多

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?