导航栏 bootstrap 菜单未在移动设备中显示
Navbar bootstrap menu not showing in mobile
这是我的 header.php 当我在手机上试用时,导航栏在手机上不起作用。所有菜单均正确显示在桌面屏幕中,但未显示在选项卡或移动设备中。这是我的代码。
<!DOCTYPE html>
<html>
<head>
<title>International Pvt. Ltd.</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://stackpath.bootstrapcdn.com/bootswatch/4.1.0/minty/bootstrap.min.css" rel="stylesheet" integrity="sha384-b8rPE9Kj0lNck6sxWxUIJRCE3IHrqNXF74vcnXKYS/NZPi7WInVsaIKeEjIDpyNt" crossorigin="anonymous">
<link rel="stylesheet" href="#assets/css/style.css">
<script src="https://cdn.ckeditor.com/4.9.1/standard/ckeditor.js">/script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-primary navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="#">International</a>
</div>
<div class="collapse navbar-collapse" id="navbarColor01">
<ul class="navbar-nav mr-auto" >
<li class="nav-item"><a class="nav-link" href="#">Home</a</li>
<li class="nav-item"><a class="nav-link" href="#about">About</a></li>
<li class="nav-item"><a class="nav-link" href="#posts">Blog</a></li>
<li class="nav-item"><a class="nav-link" href="#categories">Categories</a></li>
<?php if(!$this->session->userdata('logged_in')) : ?>
<li class="nav-item"><a class="nav-link" href="#users/login">Login</a></li>
<li class="nav-item"><a class="nav-link" href="#users/register">Register</a></li>
<?php endif; ?>
<?php if($this->session->userdata('logged_in')) : ?>
<li class="nav-item"><a class="nav-link" href="#posts/create">Create Post</a></li>
<li class="nav-item"><a class="nav-link" href="#categories/create">Create Category</a></li>
<li class="nav-item"><a class="nav-link" href="#users/logout">Logout</a></li>
<?php endif; ?>
</ul>
</div>
</div>
</nav>
[...]
</body>
从
中删除 class "collapse"
<div class="collapse navbar-collapse" id="navbarColor01">
要创建可折叠的导航栏,请使用带有 class="navbar-toggle"、data-toggle="collapse" 和 data-target="#thetarget" 的按钮。然后将导航栏内容(链接等)包裹在 div 元素中 class="collapse navbar-collapse",后跟与按钮的数据目标匹配的 id:"thetarget"
<nav class="navbar navbar-expand-md bg-dark navbar-dark">
<!-- Brand -->
<a class="navbar-brand" href="#">Navbar</a>
<!-- Toggler/collapsibe Button -->
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#collapsibleNavbar">
<span class="navbar-toggler-icon"></span>
</button>
<!-- Navbar links -->
<div class="collapse navbar-collapse" id="collapsibleNavbar">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
</ul>
</div>
</nav>
此外,您还必须包含 bootstrap 的 js。
您的导航栏已隐藏。添加一些按钮(汉堡包),它将显示您的导航栏:
<div class="col-10 text-right d-md-none">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor01" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
</div>
把它放在 div 之前和你的 ul
。这个代码示例来自我的项目 - 当然你必须调整 类 到你的项目。
不包括 bootstrap 的脚本标记。 Bootstrap 需要 javascript 到 运行 这些动画中的一些。因此,包括 bootstrap.min.js 的脚本标记,还包括 jquery.min.js 和 jquery UI,因为某些动画使用它们。这是上面提到的脚本标签。编码愉快:)
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script
src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script
src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'></script>
这是我的 header.php 当我在手机上试用时,导航栏在手机上不起作用。所有菜单均正确显示在桌面屏幕中,但未显示在选项卡或移动设备中。这是我的代码。
<!DOCTYPE html>
<html>
<head>
<title>International Pvt. Ltd.</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://stackpath.bootstrapcdn.com/bootswatch/4.1.0/minty/bootstrap.min.css" rel="stylesheet" integrity="sha384-b8rPE9Kj0lNck6sxWxUIJRCE3IHrqNXF74vcnXKYS/NZPi7WInVsaIKeEjIDpyNt" crossorigin="anonymous">
<link rel="stylesheet" href="#assets/css/style.css">
<script src="https://cdn.ckeditor.com/4.9.1/standard/ckeditor.js">/script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-primary navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="#">International</a>
</div>
<div class="collapse navbar-collapse" id="navbarColor01">
<ul class="navbar-nav mr-auto" >
<li class="nav-item"><a class="nav-link" href="#">Home</a</li>
<li class="nav-item"><a class="nav-link" href="#about">About</a></li>
<li class="nav-item"><a class="nav-link" href="#posts">Blog</a></li>
<li class="nav-item"><a class="nav-link" href="#categories">Categories</a></li>
<?php if(!$this->session->userdata('logged_in')) : ?>
<li class="nav-item"><a class="nav-link" href="#users/login">Login</a></li>
<li class="nav-item"><a class="nav-link" href="#users/register">Register</a></li>
<?php endif; ?>
<?php if($this->session->userdata('logged_in')) : ?>
<li class="nav-item"><a class="nav-link" href="#posts/create">Create Post</a></li>
<li class="nav-item"><a class="nav-link" href="#categories/create">Create Category</a></li>
<li class="nav-item"><a class="nav-link" href="#users/logout">Logout</a></li>
<?php endif; ?>
</ul>
</div>
</div>
</nav>
[...]
</body>
从
中删除 class "collapse"<div class="collapse navbar-collapse" id="navbarColor01">
要创建可折叠的导航栏,请使用带有 class="navbar-toggle"、data-toggle="collapse" 和 data-target="#thetarget" 的按钮。然后将导航栏内容(链接等)包裹在 div 元素中 class="collapse navbar-collapse",后跟与按钮的数据目标匹配的 id:"thetarget"
<nav class="navbar navbar-expand-md bg-dark navbar-dark">
<!-- Brand -->
<a class="navbar-brand" href="#">Navbar</a>
<!-- Toggler/collapsibe Button -->
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#collapsibleNavbar">
<span class="navbar-toggler-icon"></span>
</button>
<!-- Navbar links -->
<div class="collapse navbar-collapse" id="collapsibleNavbar">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
</ul>
</div>
</nav>
此外,您还必须包含 bootstrap 的 js。
您的导航栏已隐藏。添加一些按钮(汉堡包),它将显示您的导航栏:
<div class="col-10 text-right d-md-none">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor01" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
</div>
把它放在 div 之前和你的 ul
。这个代码示例来自我的项目 - 当然你必须调整 类 到你的项目。
不包括 bootstrap 的脚本标记。 Bootstrap 需要 javascript 到 运行 这些动画中的一些。因此,包括 bootstrap.min.js 的脚本标记,还包括 jquery.min.js 和 jquery UI,因为某些动画使用它们。这是上面提到的脚本标签。编码愉快:)
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script
src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script
src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'></script>