美文网首页
css双飞翼布局方式

css双飞翼布局方式

作者: oopsWeb | 来源:发表于2021-05-26 10:27 被阅读0次

    css双飞翼布局指的是左右两侧盒子固定,中间的盒子自适应大小

    这里有四种方式可以实现

    一、利用浏览器加载顺序

    将中间需要自适应的盒子放在最后,让浏览器左后加载,先让左右两个固定宽度的盒子浮动上去,中间自适应的盒子就可以上去了。

     <style>
        * {
          margin: 0;
          padding: 0;
        }
    
        .left-box {
          float: left;
          width: 300px;
          height: 900px;
          background: pink;
        }
    
        .conter-box {
          overflow: hidden;
          height: 900px;
          background: purple;
        }
    
        .right-box {
          float: right;
          width: 300px;
          height: 900px;
          background: skyblue;
        }
      </style>
    </head>
    
    <body>
      <div class="left-box"></div>
      <div class="right-box"></div>
      <div class="conter-box"></div>
    </body>
    

    二、利用css3属性中的calc()计算属性

    利用css3中的计算属性让中间自适应的盒子的宽度100% 减去 两边固定的宽度分给加上浮动属性

    
      <style>
        * {
          margin: 0;
          padding: 0;
        }
    
        .left-box {
          float: left;
          width: 300px;
          height: 900px;
          background: pink;
        }
    
        .conter-box {
          float: left;
          width: calc(100% - 600px);
          overflow: hidden;
          height: 900px;
          background: purple;
        }
    
        .right-box {
          float: right;
          width: 300px;
          height: 900px;
          background: skyblue;
        }
      </style>
    </head>
    
    <body>
      <div class="left-box"></div>
      <div class="conter-box"></div>
      <div class="right-box"></div>
    </body>
    

    三、利用定位属性

    利用定位属性左右设置为两边固定盒子的宽度即可

     <style>
        * {
          margin: 0;
          padding: 0;
        }
    
        .left-box {
          float: left;
          width: 300px;
          height: 900px;
          background: pink;
        }
    
        .conter-box {
          position: absolute;
          top: 0;
          left: 300px;
          right: 300px;
          overflow: hidden;
          height: 900px;
          background: purple;
        }
    
        .right-box {
          float: right;
          width: 300px;
          height: 900px;
          background: skyblue;
        }
      </style>
    </head>
    
    <body>
      <div class="left-box"></div>
      <div class="conter-box"></div>
      <div class="right-box"></div>
    </body>
    

    四、利用flex布局

    在外部套一个大盒子设置div属性紧贴两边中间自适应属性justify-content: space-between;

    <style>
        * {
          margin: 0;
          padding: 0;
        }
    
        .box {
          display: flex;
          justify-content: space-between;
        }
    
        .left-box {
          width: 300px;
          height: 900px;
          background: pink;
        }
    
        .conter-box {
          flex: 1;
          height: 900px;
          background: purple;
        }
    
        .right-box {
          width: 300px;
          height: 900px;
          background: skyblue;
        }
      </style>
    </head>
    
    <body>
      <div class="box">
        <div class="left-box"></div>
        <div class="conter-box"></div>
        <div class="right-box"></div>
      </div>
    
    

    相关文章

      网友评论

          本文标题:css双飞翼布局方式

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