02-布局中margin和padding区别

需求:
1)上下两个盒子固定定位,中间的盒子自适应高度。撑大剩余盒子高度。


Snipaste_2018-06-20_16-07-12.png

注意:
1)中间的盒子只能使用padding让出位置,并且要增加box-sizing属性。
2)marging不能达到该效果。

个人分析:
不能使用maging,因为margin先让出位置,但让出的位置还是属性剩余高度,仍然 作为自己的高度。于是就溢出来。完整代码如下:

<!-- 
  需求:
     1)上下两个盒子固定定位,中间的盒子自适应高度。撑大剩余盒子高度。
  
  注意:
     1)中间的盒子只能使用padding让出位置,并且要增加box-sizing属性。
     2)marging不能达到该效果。
 -->
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  
  <style>
      html,body{
        height: 100%;
      }

      .box{
        width: 500px;
        height: 100%;
        background-color: #ccc;
      }
      .box1{
        position: fixed;
        top:0px;
        left:0px;
        width: 100%;
        height: 100px;
        background-color: red;
      }

      .box2{
        height: 100%;
        background-color: yellow;
        /* 不能使用maging,因为margin先让出位置,但让出的位置还是属性剩余高度,仍然作为自己的高度。
           于是就溢出来。
         */
        padding-top:100px;
        padding-bottom:100px;
        box-sizing: border-box;
      }

      .box3{
        position: fixed;
        bottom:0px;
        left:0px;
        width: 100%;
        height: 100px;
        background-color: green;
      }

  </style>
  <div class="box">
      <div class="box1"></div>
      <div class="box2"></div>
      <div class="box3"></div>
  </div>
 
</body>
</html>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,815评论 1 92
  • 1. 前言 前端圈有个“梗”:在面试时,问个css的position属性能刷掉一半人,其中不乏工作四五年的同学。在...
    YjWorld阅读 4,559评论 5 15
  • 学会使用CSS选择器熟记CSS样式和外观属性熟练掌握CSS各种选择器熟练掌握CSS各种选择器熟练掌握CSS三种显示...
    七彩小鹿阅读 6,347评论 2 66
  • 移动开发基本知识点 一.使用rem作为单位 html { font-size: 100px; } @media(m...
    横冲直撞666阅读 3,523评论 0 6
  • 品牌有一种特性,一旦得到人的信任,这人就会在有需要时第一个想到这个品牌,追随这个品牌的风尚,相信品牌下的产品都有优...
    莱木柒阅读 983评论 5 14