0

0

如何在 Bootstrap 5 中垂直与水平居中页面内容

花韻仙語

花韻仙語

发布时间:2026-01-13 15:54:11

|

781人浏览过

|

来源于php中文网

原创

如何在 Bootstrap 5 中垂直与水平居中页面内容

本文详解在 bootstrap 5.3+ 中实现 section 内容(文字、图片等)在视口内**垂直+水平居中**的多种可靠方法,涵盖 flex 工具类、容器嵌套逻辑及常见误区修正。

在 Bootstrap 5 中,要将

内容真正居中于视口中央(即水平+垂直居中),仅靠 .container 或 .row 默认布局是不够的——因为 Bootstrap 的栅格系统本身是流式布局,不自动处理垂直对齐。关键在于利用 Bootstrap 内置的 Flexbox 工具类,配合语义化结构。

✅ 正确做法:使用 d-flex + justify-content-center + align-items-center

最推荐、最简洁的方式是将 .content(即 section)本身设为 Flex 容器,并应用居中类:

<section class="content d-flex justify-content-center align-items-center" style="background-color: lightgreen; min-height: 100vh;">
  <div class="text-center">
    <h1>Heading</h1>
    <p>Centered both horizontally and vertically</p>
    @@##@@
  </div>
</section>
? 关键点说明:d-flex:将 变为 Flex 容器(必需);justify-content-center:实现水平居中;align-items-center:实现垂直居中;min-height: 100vh(推荐替代 height: 100vh):确保 section 至少占满视口高度,避免内容塌陷;

⚠️ 原代码问题分析

你原结构中存在几个典型误区:

NexChatGPT
NexChatGPT

火爆全网的IDEA插件,支持IDEA全家桶

下载
  • ❌ 在 .row 上误用 justify-center(Bootstrap 5 中无此 class,正确为 justify-content-center);
  • ❌ 混用 text-center(仅影响内联文本对齐)和 mx-auto(仅水平居中块级元素,但无法垂直居中);
  • ❌ .row 默认是 flex-direction: row,其 align-items 默认为 stretch,不会自动垂直居中子列;
  • ❌ col-lg-10 mx-auto col-lg-5 写法错误(重复 col-lg-* 类,后者会覆盖前者)。

✅ 进阶方案:保留栅格结构 + 居中控制

若需严格保持两栏布局(如左文右图),仍可居中整行内容:

<section class="content d-flex align-items-center" style="background-color: moccasin; min-height: 100vh;">
  <div class="container">
    <div class="row justify-content-center">
      <div class="col-lg-6 text-center text-lg-start">
        <h1>Heading</h1>
        <p>Left-aligned on large screens, centered on mobile</p>
      </div>
      <div class="col-lg-6 d-flex justify-content-center">
        @@##@@
      </div>
    </div>
  </div>
</section>

? 提示:

  • 外层 d-flex align-items-center 确保整行在视口中垂直居中;
  • row.justify-content-center 让两列整体水平居中;
  • 右侧列内嵌 d-flex justify-content-center 精确控制图片水平位置;
  • 使用 img-fluid 保证响应式缩放。

? 注意事项总结

  • ✅ 始终优先使用 min-height: 100vh 而非 height: 100vh,避免内容溢出时布局异常;
  • ✅ 不要依赖 text-center 实现块级元素居中——它只作用于内联内容(如文字、);
  • ✅ Bootstrap 5 已移除旧版 center-block 和 text-xs-center 等,统一使用 text-{breakpoint}-{align} 和 justify-content-* / align-items-*;
  • ✅ 若需兼容 Safari 旧版本,可添加 -webkit-box-align: center 等前缀(现代项目通常无需);
  • ✅ 自定义 CSS 中慎用 position: absolute 居中(破坏响应式与可访问性),Flex 方案更健壮。

掌握这些 Flex 工具类组合,你就能在任意 Bootstrap 5 项目中,精准、语义化、响应式地实现内容居中——无需额外 JS,也无需 hack 式 margin 调整。

PlaceholderImage

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

747

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

24

2025.12.06

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

530

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

514

2023.07.28

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

678

2023.08.03

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

5883

2023.08.17

js删除节点的方法
js删除节点的方法

js删除节点的方法有:1、removeChild()方法,用于从父节点中移除指定的子节点,它需要两个参数,第一个参数是要删除的子节点,第二个参数是父节点;2、parentNode.removeChild()方法,可以直接通过父节点调用来删除子节点;3、remove()方法,可以直接删除节点,而无需指定父节点;4、innerHTML属性,用于删除节点的内容。

492

2023.09.01

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

219

2023.09.04

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

48

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.9万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.5万人学习

CSS教程
CSS教程

共754课时 | 38.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号