css布局,左右固定中间自适应实现

1.绝对定位+浮动

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>布局测试</title>
</head>
<style type="text/css">
    .demo{
        position: relative;
        width: 1000px;
        height: 400px;
        margin: 0 auto;
        border: 1px solid red;
    }
    .left{
        float: left;
        width: 200px;
        height: 100%;
        background-color: blue;
    }
    .mid{
        position: absolute;
        left: 200px;
        right: 100px;
        height: 100%;
        background-color: yellow;
    }
    .right{
        float: right;
        width: 100px;
        height: 100%;
        background: green;
    }
</style>
<body>
  <div class="demo">
      <div class="left"></div>
      <div class="mid"></div>
      <div class="right"></div>
  </div>
  <script type="text/javascript">
  </script>
</body>

</html>

2.table布局实现

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>布局测试</title>
</head>
<style type="text/css">
    .demo{
        position: relative;
        display: table;
        width: 1000px;
        height: 400px;
        margin: 0 auto;
        border: 1px solid red;
    }
    .left{
        display: table-cell;
        width: 200px;
        background-color: blue;
    }
    .mid{
        display: table-cell;
        background-color: yellow;
    }
    .right{
        display: table-cell;
        width: 100px;
        background: green;
    }
</style>
<body>
  <div class="demo">
      <div class="left"></div>
      <div class="mid"></div>
      <div class="right"></div>
  </div>
  <script type="text/javascript">
  </script>
</body>

</html>

3.flex布局实现

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>布局测试</title>
</head>
<style type="text/css">
    .demo{
        display: flex;
        position: relative;
        width: 1000px;
        height: 400px;
        margin: 0 auto;
        border: 1px solid red;
    }
    .left{
        width: 200px;
        background-color: blue;
    }
    .mid{
        flex: 1;
        background-color: yellow;
    }
    .right{
        width: 100px;
        background: green;
    }
</style>
<body>
  <div class="demo">
      <div class="left"></div>
      <div class="mid"></div>
      <div class="right"></div>
  </div>
  <script type="text/javascript">
  </script>
</body>

</html>
    原文作者:小脑fu
    原文地址: https://segmentfault.com/a/1190000010851281
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞