Boostrap入門(mén)準(zhǔn)備之border box
之前在學(xué)習(xí)Bootstrap的過(guò)程中,遇到各種奇葩的坑,如果在學(xué)習(xí)bootstrap之前,準(zhǔn)備工作先做好,就可以或多或少的避開(kāi)一些坑。下面小編開(kāi)始給大家介紹border-box這個(gè)屬性的知識(shí)。
在Boostrap自帶的css文件:boostrap.css中,有這樣一段代碼:
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
這意味著在寫(xiě)代碼時(shí),這個(gè)屬性將無(wú)處不在。那這個(gè)box-sizing:boder-box究竟是什么鬼呢?讓我們先來(lái)看看一段很普通的代碼:
<div class="outer" style="width:500px; height:500px; padding:100px; border:1px solid #000; background-color: yellow; "> <div class="inner" style="width:100%; height:100%; background-color:pink;"></div> </div>
運(yùn)行代碼得出:outer的高度為702px,寬度為702px,inner的寬度為500px,高度為500px;這里大家應(yīng)該都沒(méi)什么疑問(wèn)吧,我們現(xiàn)在看看另外一段代碼:
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } <div class="outer" style="width:500px; height:500px; padding:100px; border:1px solid #000; background-color: yellow; "> <div class="inner" style="width:100%; height:100%; background-color:pink;"></div> </div>
這段代碼其實(shí)就是頭兩段代碼的相加,可以簡(jiǎn)單的理解為現(xiàn)在是在Boostrap的框架中開(kāi)始寫(xiě)代碼,代碼運(yùn)行的結(jié)果為:outer的寬度為500px,高度為500px;inner的寬高為298px;
導(dǎo)致這樣的結(jié)果的原因是:box-sizing:border-box使得元素的寬高不會(huì)受padding和border的影響,如上面的代碼,即使outer有padding,border,但是padding和border都不會(huì)影響outer的寬高,outer的寬高還是500px;但是padding和border跑哪里去了?答案:跑到里面去了!打開(kāi)瀏覽器的調(diào)試工具,看outer的樣式詳情:
我們可以明顯的看到,padding和border都是有效的,只是它們占據(jù)了outer的內(nèi)部空間,由于padding:100px占據(jù)了outer的200px寬高值,border占據(jù)了2px的寬高值,所以inner只能獲得298px的寬高值。
如果大家有ie下的網(wǎng)頁(yè)開(kāi)發(fā)經(jīng)驗(yàn)的話,就會(huì)發(fā)現(xiàn),box-sizing:border-box就是低版本ie的怪異模式。
以上所述是小編給大家介紹的Boostrap入門(mén)準(zhǔn)備之border box的相關(guān)知識(shí),大家都學(xué)會(huì)了嗎,如果有疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的。同時(shí)也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
下面給大家介紹box-sizing border-box 的理解
-webkit-box-sizing: border-box; 則div 設(shè)置的寬高將包含 邊框及 padding
<!DOCTYPE html> <html> <head> <title>box-sizing</title> <style type="text/css"> .testdiv{ padding: 10px;; width:100px; border: 10px solid } </style> </head> <body > <div class="testdiv" > 普通</div> <div class="testdiv" style=" -webkit-box-sizing: border-box;"> 特殊 </div> </body> </html>
- 頁(yè)面遮罩層,并且阻止頁(yè)面body滾動(dòng)。bootstrap模態(tài)框原理
- bootstrap data與jquery .data
- jquery ui bootstrap 實(shí)現(xiàn)自定義風(fēng)格
- bootstrap改變按鈕加載狀態(tài)
- 基于Bootstrap+jQuery.validate實(shí)現(xiàn)Form表單驗(yàn)證
- 使用jQuery和Bootstrap實(shí)現(xiàn)多層、自適應(yīng)模態(tài)窗口
- bootstrap table 服務(wù)器端分頁(yè)例子分享
- jquery ui resize 中border-box的bug修正
- Bootstrap基礎(chǔ)學(xué)習(xí)
相關(guān)文章
JS模態(tài)窗口返回值兼容問(wèn)題的完美解決方法
下面小編就為大家?guī)?lái)一篇JS模態(tài)窗口返回值兼容問(wèn)題的完美解決方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05JS獲取當(dāng)前時(shí)間的年月日時(shí)分秒及時(shí)間的格式化的方法
這篇文章主要介紹了js獲取當(dāng)前時(shí)間的年月日時(shí)分秒及時(shí)間的格式化,本文通過(guò)實(shí)例代碼講解的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12JavaScript使用atan2來(lái)繪制箭頭和曲線的實(shí)例
下面小編就為大家?guī)?lái)一篇JavaScript使用atan2來(lái)繪制箭頭和曲線的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09javascript仿php的print_r函數(shù)輸出json數(shù)據(jù)
輸出json數(shù)據(jù),php的print_r函數(shù)可以輕松實(shí)現(xiàn),下面為大家介紹下javascript也可以模仿print_r函數(shù)輸出json數(shù)據(jù),具體實(shí)現(xiàn)如下,感興趣的朋友可以了解下2013-09-09通過(guò)實(shí)例解析javascript Date對(duì)象屬性及方法
這篇文章主要介紹了通過(guò)實(shí)例解析javascript Date對(duì)象屬性及方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11javascript import css實(shí)例代碼
差點(diǎn)被FF下的insertRule給帶暈了. sheet.insertRule("@import url('aa.css');",sheet.cssRules.length);2008-07-07