css佈局,左右固定中間自適應實現

小腦fu發表於2019-02-16

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>

相關文章