You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bootstrap导航栏添加居中文本后菜单项换行问题咨询

导航栏菜单项换行问题:添加居中文本后“Contact Us”被挤到下一行

基于MDB的Bootstrap导航栏示例,添加自定义居中文本后,“Contact Us”菜单项无法与“About”“Services”保持在同一行,被挤到下一行。以下是相关代码及页面截图:

index.html代码

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
    <meta http-equiv="x-ua-compatible" content="ie=edge" />
    <meta name="robots" content="index, follow" />
    <title>JU Physiotherapy</title>
    <link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon" />
    <!-- Font Awesome -->
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" />
    <!-- Google Fonts Roboto -->
    <link rel="stylesheet"
        href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700;900&display=swap" />
    <!-- MDB -->
    <link rel="stylesheet" href="css/mdb.min.css" />
    <link rel="stylesheet" href="css/styles.css" />
</head>

<body>
    <!-- Start your project here-->
    <!-- Navbar -->
    <nav data-mdb-navbar-init class="navbar navbar-expand-lg navbar-light bg-white">
        <!-- Container wrapper -->
        <div class="container-fluid">
            <!-- Toggle button -->
            <button data-mdb-collapse-init class="navbar-toggler" type="button"
                data-mdb-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false"
                aria-label="Toggle navigation">
                <i class="fas fa-bars"></i>
            </button>

            <!-- Collapsible wrapper -->
            <div class="collapse navbar-collapse" id="navbarSupportedContent">
                <!-- Navbar brand -->
                <a class="navbar-brand mt-2 mt-lg-0" href="index.html">
                    <img style="width:50px;height:50px;" src="images/logo.png" alt="" loading="lazy" />
                </a>
                <!-- Left links -->
                <ul class="navbar-nav me-auto mb-2 mb-lg-0">
                    <li class="nav-item">
                        <a class="nav-link" href="index.html">About</a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="services.html">Services</a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="contact-us.html">Contact Us</a>
                    </li>
                </ul>
                <!-- Left links -->
            </div>
            <!-- Collapsible wrapper -->

            <div class="container-md d-flex justify-content-center">
                Hello
            </div>

            <!-- Right elements -->
            <div class="d-flex align-items-center">
                <!-- Icon -->
                <a class="text-reset me-3" target="_blank"
                    href="https://www.facebook.com/profile.php?id=100090193406935">
                    <img style="width:45px;height:45px" src="images/facebook.png" alt="">
                </a>
                <a class="text-reset me-3" target="_blank"
                    href="https://www.linkedin.com/in/james-underwood-269a06118/">
                    <img style="width:45px;height:45px;" src="images/linkedin.png" alt="">
                </a>
                <a class="text-reset me-3" target="_blank" href="https://www.instagram.com/juphysiotherapy/">
                    <img style="width:38px;height:38px;" src="images/instagram.png" alt="">
                </a>
                <a class="text-reset me-3" target="_blank" href="https://www.whatsapp.com/">
                    <img style="width:40px;height:40px;" src="images/whatsapp.png" alt="">
                </a>
                <a class="text-reset me-3" href="#">
                    <img style="width:40px;height:40px;border-radius:20px;" src="images/profile-pic-current.png" alt="">
                </a>
            </div>
        </div>
        <!-- Container wrapper -->
    </nav>

    <!-- Navbar -->

    <!-- End your project here-->

    <!-- MDB -->
    <script type="text/javascript" src="js/mdb.umd.min.js"></script>
</body>
</html>

styles.css代码

body {
    margin: 0%;
    padding: 0%;
}

页面截图

导航栏问题截图


问题原因及解决方法

问题根源在于布局结构不合理:原代码中居中文本使用的container-md自带左右内边距,且它与左侧折叠导航、右侧图标在container-fluid下是并列元素,当屏幕宽度不足时,左侧导航的可用空间被挤压,导致菜单项换行。

修复方案:

  1. 给外层container-fluid添加d-flex align-items-center,让内部所有元素在同一行垂直居中。
  2. 移除居中文本的container-md,替换为flex-grow-1 d-flex justify-content-center:
    • flex-grow-1让该容器占据左右元素间的所有可用空间,避免挤压两侧内容。
    • d-flex justify-content-center保证文字在容器内居中显示。
  3. 修正原代码中多余的闭合</div>标签,确保HTML结构合法。

修改后的核心导航栏代码:

<nav data-mdb-navbar-init class="navbar navbar-expand-lg navbar-light bg-white">
    <div class="container-fluid d-flex align-items-center">
        <!-- Toggle button -->
        <button data-mdb-collapse-init class="navbar-toggler" type="button"
            data-mdb-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false"
            aria-label="Toggle navigation">
            <i class="fas fa-bars"></i>
        </button>

        <!-- Collapsible wrapper -->
        <div class="collapse navbar-collapse" id="navbarSupportedContent">
            <a class="navbar-brand mt-2 mt-lg-0" href="index.html">
                <img style="width:50px;height:50px;" src="images/logo.png" alt="" loading="lazy" />
            </a>
            <ul class="navbar-nav me-auto mb-2 mb-lg-0">
                <li class="nav-item">
                    <a class="nav-link" href="index.html">About</a>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="services.html">Services</a>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="contact-us.html">Contact Us</a>
                </li>
            </ul>
        </div>

        <!-- 调整后的居中文本容器 -->
        <div class="flex-grow-1 d-flex justify-content-center">
            Hello
        </div>

        <!-- Right elements -->
        <div class="d-flex align-items-center">
            <a class="text-reset me-3" target="_blank"
                href="https://www.facebook.com/profile.php?id=100090193406935">
                <img style="width:45px;height:45px" src="images/facebook.png" alt="">
            </a>
            <a class="text-reset me-3" target="_blank"
                href="https://www.linkedin.com/in/james-underwood-269a06118/">
                <img style="width:45px;height:45px;" src="images/linkedin.png" alt="">
            </a>
            <a class="text-reset me-3" target="_blank" href="https://www.instagram.com/juphysiotherapy/">
                <img style="width:38px;height:38px;" src="images/instagram.png" alt="">
            </a>
            <a class="text-reset me-3" target="_blank" href="https://www.whatsapp.com/">
                <img style="width:40px;height:40px;" src="images/whatsapp.png" alt="">
            </a>
            <a class="text-reset me-3" href="#">
                <img style="width:40px;height:40px;border-radius:20px;" src="images/profile-pic-current.png" alt="">
            </a>
        </div>
    </div>
</nav>

修改后,导航栏的三个模块会合理分配空间,菜单项不会再被挤到下一行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 02:55:36