• 三栏布局,中间自适应


    方法一:两边使用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%

  • 相关阅读:
    神经网络参数量和计算量,神经网络参数个数计算
    html5 头部标签
    YOLOv8血细胞检测(12):EMA基于跨空间学习的高效多尺度注意力、效果优于ECA、CBAM、CA | ICASSP2023
    Docker 常用命令
    C数据结构:排序
    mybatis foeahe 批量插入 删除 修改
    (数据科学学习手札158)基于martin为在线地图快速构建精灵图服务
    .NET EF配置数据库链接
    解决 pip 安装第三方包时因 SSL 报错
    基于人工势场法的二维平面内无人机的路径规划的matlab仿真,并通过对势场法改进避免了无人机陷入极值的问题
  • 原文地址:https://blog.csdn.net/zhao_hong_ran/article/details/134492929