• 三栏布局,中间自适应


    方法一:两边使用float + 中间使用margin

    方法二:两边使用absolute + 中间使用margin

    方法三:flex 布局

    方法四:grid 布局

    方法一:相关HTML代码【两边使用float + 中间使用margin】

    1. <div class="container">
    2. <div class="left">div>
    3. <div class="right">div>
    4. <div class="main">123div>
    5. div>

    方法一:相关CSS代码【两边使用float + 中间使用margin】

    1. .container{
    2. width: 400px;
    3. height: 100px;
    4. border: 1px solid #000;
    5. }
    6. .left, .right, .main{
    7. height: 100px;
    8. }
    9. .left {
    10. width: 100px;
    11. float: left;
    12. background-color: aliceblue;
    13. }
    14. .right{
    15. width: 100px;
    16. float: right;
    17. background-color: blanchedalmond;
    18. }
    19. .main{
    20. margin: 0 100px;
    21. background-color: aqua;
    22. }

    方法二:相关HTML代码【两边使用absolute + 中间使用margin】

    1. <div class="container">
    2. <div class="left">div>
    3. <div class="main">123div>
    4. <div class="right">div>
    5. div>

    方法二:相关CSS代码【两边使用absolute + 中间使用margin】

    1. .container{
    2. width: 400px;
    3. height: 100px;
    4. border: 1px solid #000;
    5. position: relative;
    6. }
    7. .left, .right, .main{
    8. height: 100px;
    9. }
    10. .left {
    11. width: 100px;
    12. background-color: aliceblue;
    13. position: absolute;
    14. left: 0;
    15. top: 0;
    16. }
    17. .right{
    18. width: 100px;
    19. background-color: blanchedalmond;
    20. position: absolute;
    21. right:0;
    22. top: 0;
    23. }
    24. .main{
    25. margin: 0 100px;
    26. background-color: aqua;
    27. }

    方法三:相关HTML代码【flex 布局】

    1. <div class="container">
    2. <div class="left">div>
    3. <div class="main">123div>
    4. <div class="right">div>
    5. div>

    方法三:相关CSS代码【flex 布局】

    1. .container{
    2. width: 400px;
    3. height: 100px;
    4. border: 1px solid #000;
    5. display: flex;
    6. }
    7. .left, .right, .main{
    8. height: 100px;
    9. }
    10. .left {
    11. width: 100px;
    12. background-color: aliceblue;
    13. }
    14. .right{
    15. width: 100px;
    16. background-color: blanchedalmond;
    17. }
    18. .main{
    19. flex: 1;
    20. background-color: aqua;
    21. }

    方法四:相关HTML代码【grid 布局】

    1. <div class="container">
    2. <div class="left">div>
    3. <div class="main">123div>
    4. <div class="right">div>
    5. div>

    方法四:相关CSS代码【grid 布局】

    1. .container{
    2. width: 400px;
    3. height: 100px;
    4. border: 1px solid #000;
    5. display: grid;
    6. grid-template-columns: 100px auto 100px;
    7. }
    8. .left, .right, .main{
    9. height: 100px;
    10. }
    11. .left {
    12. background-color: aliceblue;
    13. }
    14. .right{
    15. background-color: blanchedalmond;
    16. }
    17. .main{
    18. background-color: aqua;
    19. }

    结果展示: 

    其他

    【两边使用float, 中间使用负margin 的方法比较复杂】

    【table布局,性能低,易引发回流和重绘,放弃】

    方法一到四宽度均会自适应,不需要设置width:100%

  • 相关阅读:
    使用Excel导入和导出数据
    jersey跨域文件上传
    Simulink 最基础教程(三)常用模块
    计算机毕业设计之java+ssm的图书借阅系统
    11 【Express服务端渲染】
    元宇宙将给你的行业带来怎样的冲击?
    浅谈JavaScript中的forEach、for in和for of循环的基本用法和区别。
    JAVA并发编程总结
    注解&反射学习笔记
    【ZYNQ-嵌入式】zynq学习笔记(二)—— GIPO的硬件配置和软件配置
  • 原文地址:https://blog.csdn.net/zhao_hong_ran/article/details/134492929