cSS3中可以通过 box-sizing 来指定盒模型,有2个值:即可指为 content-box、border-box , 这样我们计算盒子大小的方式就发生了改变。

    可以分成两种情况∶

    1. box-sizing:content-box 盒子大小为width + padding + border (默认的)
    2. box-sizing: border-box 盒子大小为width


    如果盒子模型我们改为 box-sizing: border-box,那padding和border就不会撑大盒子了(前提padding和border不会超过width宽度)

    1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Document</title>
    8. <style>
    9. * {
    10. margin: 0;
    11. padding: 0;
    12. }
    13. div {
    14. width: 200px;
    15. height: 200px;
    16. padding: 10px;
    17. border: 20px solid red;
    18. background-color: blue;
    19. }
    20. p {
    21. width: 200px;
    22. height: 200px;
    23. padding: 10px;
    24. border: 20px solid red;
    25. background-color: blue;
    26. box-sizing: border-box;
    27. }
    28. </style>
    29. </head>
    30. <body>
    31. <div>winFang</div>
    32. <p>winFang</p>
    33. </body>
    34. </html>

    image.png

    所以以后就可以用下面的代码来设置全局默认模式

        * {
          margin: 0;
          padding: 0;
          box-sizing: border-box;
        }