width:100%和width:auto的区别

如果设置children元素margin: 0时,那么它们之间好像没什么区别

 

 

 

设置children元素margin: 0 30px

 

 

 

width: auto可以配合display: flex实现如下布局

children设置display: flex和margin: 0 -30px,红色块设置flex-grow:1和margin: 0 30px变成如下,间隔是60px的布局

 

 在parent元素加上overflow: hidden后,变成

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        #box{
          width: 600px;
          height: 300px;
          background-color: olive;
          color: #fff;
          margin: 0 auto;
          overflow: hidden;
        }
        #box .inner{
            width:auto;
            height: 250px;
            margin: 0px -30px;
            background-color: green;
            color: #fff;
            display: flex;

        }
        .red{
            background-color: red;
            flex: 1;
            margin: 0px 30px;
            
        }
    </style>
</head>
<body>
    <div id="box">parent
        <div class="inner">
            <div class="red"></div>
            <div class="red"></div>
            <div class="red"></div>
        </div>
    </div>
</body>
</html>

  

 

 

posted @ 2020-12-02 18:43  xiaorain124  阅读(40)  评论(0)    收藏  举报