实现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 是一个弹性单位,代表"分数",它会根据剩余空间的比例来分配宽度。

相关推荐
开开心心就好3 小时前
竖式除法出题工具,整除余数混合模式
运维·服务器·前端·javascript·ocr·perl·1024程序员节
起个名字费劲死了4 小时前
Halcon学习一:骰子识别
前端·python·学习
大江东去浪淘尽千古风流人物4 小时前
【HexVIO】DSP卸载双目惯性VIO:Hexagon向量化前端与单帧融合调度深度解析
前端·状态模式·slam·dsp·vio·hexagon·移动端加速
其实防守也摸鱼4 小时前
Chrome 扩展安全攻防实录:从攻击面到防御实践
开发语言·前端·网络·chrome·安全·web安全·php
web打印社区4 小时前
Lodop排障总纲-常见报错一张表
开发语言·前端·javascript·chrome·websocket
李剑一4 小时前
为什么几乎所有的知名开源项目都是外国人写的?
前端·ai编程·deepseek
小郎君6584 小时前
(一)为什么表单需要第三种状态:disabled、readonly 与纯文本展示
前端·vue.js
计算机魔术师4 小时前
1.4万亿没人接,OpenAI自己砍了1500亿
前端
溪语流沙5 小时前
【每天一个CSS | Day41】开关三连:一套状态机,三种视觉翻译
前端·css·html5·每日一练·按钮
变与不变8065 小时前
css定位布局精讲
前端·css