CSS盒子模型與怪異盒模型


         盒子模型(Box Modle可以用來對元素進行布局,包括內邊距,邊框,外邊距,和實際內容這幾個部分。

         盒子模型分為兩種 第一種是W3c標准的盒子模型(標准盒模型) 、第二種IE標准的盒子模型(怪異盒模型)

         當前大部分的瀏覽器支持的是W3c的標准盒模型,也保留了對怪異盒模型的支持,當然IE瀏覽器沿用的是怪異盒模型。怪異模式是“部分瀏覽器在支持W3C標准的同時還保留了原來的解析模式”,怪異模式主要表現在IE內核的瀏覽器。


 一、標准盒模型與怪異盒模型的表現效果的區別之處:

1、標准盒模型width指的是內容區域content的寬度;height指的是內容區域content的高度。

標准盒模型下盒子的大小  = content + border + padding + margin

 2、怪異盒模型中的width指的是內容、邊框、內邊距總的寬度(content + border + padding);height指的是內容、邊框、內邊距總的高度

怪異盒模型下盒子的大小=width(content + border + padding) + margin


 二、如何選擇盒模型

如果是定義了完整的doctype的標准文檔類型,無論是哪種模型情況,最終都會觸發標准模式,

如果doctype協議缺失,會由瀏覽器自己界定,在IE瀏覽器中IE9以下(IE6.IE7.IE8)的版本觸發怪異模式,其他瀏覽器中會默認為W3c標准模式。

 代碼

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4 <meta charset="UTF-8">
 5 <title>盒子模型</title>
 6 <style>
 7 #box1{
 8 padding:20px;
 9 background-color: greenyellow;
10 width: 100px;
11 height: 100px;
12 border:20px skyblue solid;
13 }
14 </style>
15 </head>
16 <body>
17 <div id="box1"></div>
18 </body>
19 </html>

 

布局

 

除此之外,我們還可以通過屬性box-sizing來設置盒子模型的解析模式

可以為box-sizing賦三個值:

content-box 默認值,border和padding不算到width范圍內,可以理解為是W3c的標准模型(default)

border-box:border和padding划歸到width范圍內,可以理解為是IE的怪異盒模型

padding-box:將padding算入width范圍

 

  • 當設置為box-sizing:content-box時,將采用標准模式解析計算(默認模式);

  • 當設置為box-sizing:border-box時,將采用怪異模式解析計算;

 

 


 實例:

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title>怪異盒子練習</title>
 6     <style>
 7         div{
 8             width: 234px;
 9             height: 460px;
10             background-color: #2e233e;
11             padding: 20px 0px;
12             box-sizing: border-box;
13         }
14         div li{
15             font-size: 14px;
16             height: 42px;
17             line-height: 42px;
18             padding-left: 30px;
19         }
20         a{color: white}
21         li:hover{background-color: #ff6700;}
22     </style>
23 </head>
24 <body>
25     <div>
26         <ul>
27             <li><a href="">電器商城</a></li>
28             <li><a href="">電器商城</a></li>
29             <li><a href="">電器商城</a></li>
30             <li><a href="">電器商城</a></li>
31             <li><a href="">電器商城</a></li>
32             <li><a href="">電器商城</a></li>
33             <li><a href="">電器商城</a></li>
34             <li><a href="">電器商城</a></li>
35             <li><a href="">電器商城</a></li>
36             <li><a href="">電器商城</a></li>
37         </ul>
38     </div>
39 </body>
40 </html>

 

 

 

表現效果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM