实现HTML两栏布局

Flex 布局

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
.container {
  display: flex;
}

.left {
  width: 200px; /* 固定左边宽度 */
  background-color: lightblue;
}

.right {
  flex: 1; /* 右边占据剩余空间 */
  background-color: lightpink;
}
</style>
<body>
    <div class="container">
        <div class="left">左边内容</div>
        <div class="right">右边内容</div>
    </div>
</body>
</html>

浮动 + margin

复制代码
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<style>
  .container {
    overflow: hidden;
    /* 清除浮动 */
  }

  .left {
    float: left;
    width: 200px;
    background-color: lightblue;
  }

  .right {
    margin-left: 200px;
    /* 与左边元素的宽度相同 */
    background-color: lightpink;
  }
</style>

<body>
  <div class="container">
    <div class="left">左边内容</div>
    <div class="right">右边内容</div>
  </div>
</body>

</html>

Grid 布局

复制代码
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<style>
.container {
  display: grid;
  grid-template-columns: 200px 1fr;
}

.left {
  background-color: lightblue;
}

.right {
  background-color: lightpink;
}
</style>

<body>
  <div class="container">
    <div class="left">左边内容</div>
    <div class="right">右边内容</div>
  </div>
</body>

</html>

.container {

display: grid;

grid-template-columns: 200px 1fr;

}

1fr :表示第二列会占据剩余的所有空间。fr 是一个弹性单位,代表"分数",它会根据剩余空间的比例来分配宽度。

相关推荐
search715 小时前
前端设计:CRG 3--CDC error
前端
治金的blog15 小时前
vben-admin和vite,ant-design-vue的结合的联系
前端·vscode
利刃大大16 小时前
【Vue】Vue2 和 Vue3 的区别
前端·javascript·vue.js
荔枝一杯酸牛奶17 小时前
HTML 表单与表格布局实战:两个经典作业案例详解
前端·html
Charlie_lll18 小时前
学习Three.js–纹理贴图(Texture)
前端·three.js
yuguo.im18 小时前
我开源了一个 GrapesJS 插件
前端·javascript·开源·grapesjs
安且惜18 小时前
带弹窗的页面--以表格形式展示
前端·javascript·vue.js
米奇妙妙wuu18 小时前
css实现文字和边框同样的渐变色效果
css·html·css3
GISer_Jing19 小时前
AI驱动营销:业务技术栈实战(From AIGC,待总结)
前端·人工智能·aigc·reactjs
GIS之路21 小时前
GDAL 实现影像裁剪
前端·python·arcgis·信息可视化