美文网首页html和css
Css - 标准盒模型与IE盒模型

Css - 标准盒模型与IE盒模型

作者: ElricTang | 来源:发表于2019-09-28 10:08 被阅读0次

css3属性box-sizing : content-box || border-box || inherit;

  • content-box:标准盒模型
  • border-box:IE盒模型
  • inherit:继承父元素
先来看下面代码:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
            .contentbox{
                margin:10px;
                padding: 10px;
                border: 5px solid red;
                box-sizing: content-box;
                width:100px;
                height: 100px;
            }
            .iebox{
                margin:10px;
                padding: 10px;
                border:5px solid blue;
                box-sizing:border-box; 
                height:100px;
                width:100px;    
            }
            .default{
                margin:10px;
                padding: 10px;
                border:5px solid green; 
                height:100px;
                width:100px;               
            }
        </style>
    </head>
    <body>
        <div class="contentbox">
            标准盒模型
        </div>
        <div class="iebox">
            ie盒模型
        </div>
        <div class="default">
            默认
        </div>
    </body>
</html>

效果:


盒模型.png
1. 标准盒模型(默认情况)
            .contentbox{
                margin:10px;
                padding: 10px;
                border: 5px solid red;
                box-sizing: content-box;
                width:100px;
                height: 100px;
            }
标准盒模型.png
  • 设置的(width/height)就是内容部分的(宽/高)
  • 总宽高 = (width/height) + padding + border + margin
2. IE盒模型
            .iebox{
                margin:10px;
                padding: 10px;
                border:5px solid blue;
                box-sizing:border-box; 
                height:100px;
                width:100px;    
            }
IE盒模型.png
  • 设置的width/height明明是100px,但是内容部分只有70px。原因在于IE盒模型中 (width/height) = content + padding + border
  • 总宽高 = (width/height) + margin

JavaScript两种获取元素宽高的方法(兼容性好)

    1. offsetWidth/offsetHeight = content + padding + border
console.log(document.getElementsByClassName('contentbox')[0].offsetWidth);// 130
console.log(document.getElementsByClassName('iebox')[0].offsetWidth);// 100
    1. clientWidth/clientHeight = content + padding
console.log(document.getElementsByClassName('contentbox')[0].clientWidth);// 120
console.log(document.getElementsByClassName('iebox')[0].clientWidth);// 90

相关文章

  • CSS盒模型

    基本概念标准盒模型/IE盒模型 标准模型与IE模型的区别 CSS如何设置盒模型box-sizing:content...

  • Css盒模型以及Bfc的应用场景

    CSS盒模型: 一 基本概念: 分为标准模型+IE模型。 二 标准盒模型和IE盒模型的区别。CSS如何设置这两种盒...

  • css盒模型

    1. CSS盒模型分为标准盒模型和IE盒模型2. 区别:IE盒模型的width包括padding和border,而...

  • CSS盒模型

    对CSS盒模型的认识 标准模型 + IE模型 标准模型和IE模型的区别 CSS如何设置这两种模型 js如何设置盒模...

  • CSS盒模型

    CSS盒模型的认识 标准模型 和 IE模型 CSS盒模型包括content,padding,border,marg...

  • IE,chrome,火狐浏览器在css和js方面的兼容性总结

    css盒模型差异 盒模型分为标准模型和怪异模型。chrome,火狐浏览器使用标准模型,IE使用怪异模型。在标准盒模...

  • 盒模型

    主要有两种盒模型: IE盒模型和标准盒模型。 CSS3的box-sizing可以定义使用哪种盒模型。 IE盒模型的...

  • 前端小册 - 浅谈CSS盒模型

    CSS盒模型的知识点 基本概念:标准盒模型和IE模型 标准模型和IE模型的区别 CSS如何设置这两种模型 JS如何...

  • 面试总结

    1. CSS盒模型 IE盒模型:width=content,height=contentw3c标准盒模型:wid...

  • 盒模型、定位

    标准盒模型、怪异盒模型 CSS中Box model是分为两种:: W3C标准(标准盒模型) 和 IE标准盒子模型(...

网友评论

    本文标题:Css - 标准盒模型与IE盒模型

    本文链接:https://www.haomeiwen.com/subject/nbogyctx.html