• border-box与content-box的区别


    ㈠box-sizing 属性

    ⑴box-sizing 属性允许您以特定的方式定义匹配某个区域的特定元素。

    ⑵语法:box-sizing: content-box|border-box|inherit;

    ⑶取值

     

    ㈡content-box相关内容

    ⑴padding和border不被包含在定义的width和height之内。

    对象的实际宽度等于设置的width值和border、padding之和;

    即 ( Element width = width + border + padding )

    此属性表现为标准模式下的盒模型。

    ⑵审查元素看示例

    ①代码部分

     

    ②盒模型部分

     

    ㈢border-box相关内容

    ⑴padding和border被包含在定义的width和height之内。

       对象的实际宽度就等于设置的width值,

       即使定义有border和padding也不会改变对象的实际宽度;

       即 ( Element width = width )

       此属性表现为怪异模式下的盒模型。

    ⑵审查元素看示例

    ①代码部分

     

    ②盒模型部分

     

    ㈣具体示例对比两者区别

    ⑴content-box的示例代码如下

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>content-box示例</title>
    <style>
    .one{
        background-color:red;
        width:200px;
        height:200px;
        float:left;
        border:solid 1px;
        padding:10px
    }
    
    .two{
        background-color:yellow;
        width:200px;
        height:200px;
        float:left;
        border:solid 1px;
        padding:10px;
        box-sizing:content-box;
    }
    
    img{
        width:200px;
        height:200px;
    }
    </style>
    </head>
    <body>
          <div class=one>
               <img src=ym.jpg>
          </div>
    
          <div class=two>
          <img src=ym.jpg>
          </div>
    </body>
    
    </html>

    效果图:

     

    ⑵border-box的示例代码如下

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>border-box示例</title>
    <style>
    .one{
          background-color:red;
          width:200px;
          height:200px;
          float:left;
          border:solid 1px;
          padding:10px;
        }
    
    .two{
         background-color:yellow;
         width:200px;
         height:200px;
         float:left;
         border:solid 1px;
         padding:10px;
         box-sizing:border-box;
        }
    
    img{
         width:200px;
         height:200px;
        }
    
    </style>
    </head>
    <body>
          <div class=one>
                <img src=ym.jpg>
          </div>
          
          <div class=two>
                <img src=ym.jpg>
          </div>
    </body>
    
    </html>

    效果图:

    ★通过对比发现:

    content-box 的 width 不包括 padding 和 border

    border-box 的 width 包括 padding 和 border

    ㈤js测试box-sizing属性

    <style>
    div{
        background-color:red;
        width:200px;
        height:200px;
        border:solid 1px;
        padding:10px;
    }
    
    img{
         width:200px;
         height:200px;
        }
    </style>
    <div id="cs">
    <img src="ym.jpg">
    </div>
    <hr>
    <button onclick="document.getElementById('cs').style.boxSizing='content-box'">content-box</button>
    <button onclick="document.getElementById('cs').style.boxSizing='border-box'">border-box</button>

    效果如下:

    ⑴点击按钮 :

    ⑵点击按钮:

  • 相关阅读:
    c语言中的增量与减量········不要太聪明
    存储器··············RAM,SRAM,EEPROM 等等
    对于 sizeof(char)的一些零碎······
    C语言中float,double等类型,在内存中的结构
    同步异步存储器
    Linux的帧缓冲设备(Framebuffer)简介
    嵌入式 c 中结构体经常碰到_I、 __O 、__IO是什么意思?
    新型的按键扫描程序
    数据结构
    jQuery(八)选择器与选择方法
  • 原文地址:https://www.cnblogs.com/shihaiying/p/11589477.html
Copyright © 2020-2023  润新知