You need to enable JavaScript to run this app. 如何使用Bootstrap实现图示的页面布局效果?
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Bootstrap实现图示的页面布局效果?

Bootstrap布局实现方案

Layout

你可以直接用Bootstrap原生的栅格系统、工具类实现这个布局,无需额外自定义CSS,以下是完整实现代码:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Bootstrap 布局示例</title>
  <!-- 引入Bootstrap CSS -->
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
  <!-- 顶部导航栏 -->
  <nav class="navbar navbar-expand-lg bg-body-tertiary shadow-sm mb-4">
    <div class="container-fluid">
      <a class="navbar-brand" href="#">管理后台</a>
      <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
        <span class="navbar-toggler-icon"></span>
      </button>
      <div class="collapse navbar-collapse justify-content-end" id="navbarNav">
        <ul class="navbar-nav">
          <li class="nav-item">
            <a class="nav-link active" aria-current="page" href="#">首页</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#">设置</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#">退出</a>
          </li>
        </ul>
      </div>
    </div>
  </nav>

  <div class="container-fluid px-4">
    <div class="row g-4">
      <!-- 左侧侧边栏 -->
      <div class="col-lg-3">
        <div class="card shadow-sm p-3">
          <ul class="nav flex-column">
            <li class="nav-item mb-2">
              <a class="nav-link active bg-primary text-white rounded" href="#">仪表盘</a>
            </li>
            <li class="nav-item mb-2">
              <a class="nav-link text-dark" href="#">用户管理</a>
            </li>
            <li class="nav-item mb-2">
              <a class="nav-link text-dark" href="#">订单管理</a>
            </li>
            <li class="nav-item mb-2">
              <a class="nav-link text-dark" href="#">数据统计</a>
            </li>
            <li class="nav-item mb-2">
              <a class="nav-link text-dark" href="#">系统设置</a>
            </li>
          </ul>
        </div>
      </div>

      <!-- 右侧主内容区 -->
      <div class="col-lg-9">
        <!-- 顶部4个统计卡片 -->
        <div class="row g-4 mb-4">
          <div class="col-md-3 col-sm-6">
            <div class="card shadow-sm p-3">
              <h5 class="text-muted">总访问量</h5>
              <h3 class="text-primary">12,345</h3>
              <span class="text-success">+12.5% ↑</span>
            </div>
          </div>
          <div class="col-md-3 col-sm-6">
            <div class="card shadow-sm p-3">
              <h5 class="text-muted">新增用户</h5>
              <h3 class="text-success">234</h3>
              <span class="text-success">+8.2% ↑</span>
            </div>
          </div>
          <div class="col-md-3 col-sm-6">
            <div class="card shadow-sm p-3">
              <h5 class="text-muted">订单数</h5>
              <h3 class="text-warning">567</h3>
              <span class="text-danger">-3.1% ↓</span>
            </div>
          </div>
          <div class="col-md-3 col-sm-6">
            <div class="card shadow-sm p-3">
              <h5 class="text-muted">营收</h5>
              <h3 class="text-danger">¥123,456</h3>
              <span class="text-success">+15.8% ↑</span>
            </div>
          </div>
        </div>

        <!-- 图表区域 -->
        <div class="row g-4">
          <!-- 左侧折线图 -->
          <div class="col-lg-7">
            <div class="card shadow-sm p-3">
              <h5 class="mb-3">访问趋势</h5>
              <div style="height: 300px;background-color: #f8f9fa;display: flex;align-items: center;justify-content: center;">
                折线图占位区域
              </div>
            </div>
          </div>
          <!-- 右侧统计区域 -->
          <div class="col-lg-5">
            <div class="card shadow-sm p-3 mb-4">
              <h5 class="mb-3">用户占比</h5>
              <div style="height: 180px;background-color: #f8f9fa;display: flex;align-items: center;justify-content: center;">
                环形图占位区域
              </div>
            </div>
            <div class="card shadow-sm p-3">
              <h5 class="mb-3">任务完成率</h5>
              <div class="mb-3">
                <div class="d-flex justify-content-between mb-1">
                  <span>开发任务</span>
                  <span>85%</span>
                </div>
                <div class="progress" role="progressbar" style="height: 8px">
                  <div class="progress-bar bg-primary" style="width: 85%"></div>
                </div>
              </div>
              <div class="mb-3">
                <div class="d-flex justify-content-between mb-1">
                  <span>测试任务</span>
                  <span>62%</span>
                </div>
                <div class="progress" role="progressbar" style="height: 8px">
                  <div class="progress-bar bg-success" style="width: 62%"></div>
                </div>
              </div>
              <div class="mb-3">
                <div class="d-flex justify-content-between mb-1">
                  <span>运营任务</span>
                  <span>92%</span>
                </div>
                <div class="progress" role="progressbar" style="height: 8px">
                  <div class="progress-bar bg-warning" style="width: 92%"></div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>

  <!-- 引入Bootstrap JS -->
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>

核心用到的Bootstrap类说明

  • 栅格列类:col-lg-3、col-lg-9、col-md-3等,控制不同屏幕尺寸下的列宽占比,自动实现响应式适配
  • 间距类:g-*控制栅格间距,p-*控制内边距,m-*控制外边距,替代自定义边距CSS
  • 组件类:card快速实现卡片容器样式,navbar实现顶部导航,progress实现进度条组件
  • Flex工具类:d-flex、justify-content-between、align-items-center快速实现元素对齐

内容的提问来源于stack exchange,提问作者thinklikeatechy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 10:54:04