gpt4 book ai didi

jquery - Bootstrap - 响应式导航栏无法正常工作

转载 作者:太空宇宙 更新时间:2023-11-04 15:28:54 26 4
gpt4 key购买 nike

我有 2 个 navbars,A 和 B,最初,当您将浏览器缩小到 max-width: 767px B 集在 A 之上时,I在 B 之上需要 A,这是我 previous question 中的答案,我选择了 css 答案,但它出现了一个小故障,当您单击按钮以显示 narvars 的内容时,A 保持打开状态相同的位置,但 B 移动到 A 下方,这不是所需的功能。

为了让事情更清楚......我将以图形方式展示它:

在点击按钮显示navbar的内容之前 enter image description here

点击按钮后显示navbar的内容 enter image description here

最初 Main Menu 位于 Title 之上,下一个 CSS 类改变了这一点:

.navbar-left {
position: relative;
top: 88px;
}
.navbar-inner {
position: relative;
top: -44px;
}

这是现场演示: click here

我对任何解决方案持开放态度,包括 jquerycss 导航的更改。

这是我的自定义 CSS:

body{
border: solid;
}
.navbar {
margin-bottom: 3px;
}
.btn-group {
float: right;
}
/*****************************************************/
/*************** LEFT NAV CUSTOM STYLES **************/
/*****************************************************/
.navbar-inner-left {
padding-right: 0;
padding-left: 0;
}
.navbar-left {
}
.navbar-left .nav>li {
float:none;
}
.navbar-inner-left div>.nav-list {
padding-left: 0;
}
.navbar-inner-left .container-fluid>.brand {
padding: 10px 5px 10px 5px;
}
.navbar-inner-left {
border: none;
background-color: #ffffff;
background-image: -moz-linear-gradient(top, #ffffff, #ffffff);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#ffffff));
background-image: -webkit-linear-gradient(top, #ffffff, #ffffff);
background-image: -o-linear-gradient(top, #ffffff, #ffffff);
background-image: linear-gradient(to bottom, #ffffff, #ffffff);
border: none;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffffffff', GradientType=0);
-webkit-box-shadow: 0;
-moz-box-shadow: 0;
box-shadow: 0;
}
/*************** RESPONSIVE STUFFF ***************/
/*************** RESPONSIVE STUFFF ***************/
/*************** RESPONSIVE STUFFF ***************/
/*****************************************************/
/*************** LEFT NAV CUSTOM STYLES **************/
/*****************************************************/
@media (min-width: 1200px) {
}
@media (min-width: 980px) {
}
@media (max-width: 979px) {
}
@media (min-width: 768px) and (max-width: 979px) {
.navbar-left .btn-navbar {
margin-right: -15px;
}
.navbar-inner-left .container-fluid>.brand {
float: left;
}
}
@media (max-width: 767px) {
/* BEGIN classes that make Title comes on top of Main Menu */
.navbar-left {
position: relative;
top: 88px;
}
.navbar-inner {
position: relative;
top: -44px;
}
/* END classes that make Title comes on top of Main Menu */
#logo-client {
display:none;
}
}
@media (max-width: 767px) and (min-width: 480px) {
.nav-collapse .nav>li>a, .nav-collapse .dropdown-menu a {
padding-left: 30px;
}
.navbar-inner-left .container-fluid>.brand {
padding-left: 30px;
}
.navbar-inner-left .nav-list>.nav-header {
padding-left: 20px;
}
.navbar-left .btn-navbar {
margin-right: 26px;
}
}
@media (max-width: 480px) {
.nav-collapse .nav>li>a, .nav-collapse .dropdown-menu a {
padding-left: 30px;
}
.navbar-inner-left .container-fluid>.brand {
padding-left: 30px;
}
.navbar-inner-left .nav-list>.nav-header {
padding-left: 20px;
}
.navbar-left .btn-navbar {
margin-right: 26px;
}
/*.span2 {
margin:0 auto;
top: 100px;
clear:none;
width:100%;
}
.span10 {
margin:0 auto;
top:0px;
clear:both;
width:100%;
}*/
}

HTML 代码片段

<div class="container-fluid">
<div class="row-fluid">
<div class="span2">
<img id="logo-client" alt="140x140" src="http://lorempixel.com/140/140/" />
<div class="navbar navbar-left">
<div class="navbar-inner navbar-inner-left">
<div class="container-fluid"> <a data-target=".navbar-responsive-collapse" data-toggle="collapse" class="btn btn-navbar">
<span class="icon-bar"></span><span class="icon-bar"></span>
<span class="icon-bar"></span></a> <a href="#" class="brand">Main Menu</a>

<div class="nav-collapse collapse navbar-responsive-collapse">
<ul class="nav nav-list">
<li class="nav-header">List header</li>
<li> <a href="#">Home</a>

</li>
<li> <a href="#">Library</a>

</li>
<li> <a href="#">Applications</a>

</li>
<li class="nav-header">Another list header</li>
<li> <a href="#">Profile</a>

</li>
<li> <a href="#">Settings</a>

</li>
<li class="divider"></li>
<li> <a href="#">Help</a>

</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="span10">
<div class="navbar">
<div class="navbar-inner">
<div class="container-fluid"> <a data-target=".navbar-responsive-collapse" data-toggle="collapse" class="btn btn-navbar"><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></a> <a href="#" class="brand">Title</a>

<div class="nav-collapse collapse navbar-responsive-collapse">
<ul class="nav">
<li class="dropdown"> <a data-toggle="dropdown" class="dropdown-toggle" href="#">Dropdown<strong class="caret"></strong></a>

<ul class="dropdown-menu">
<li> <a href="#">Action</a>

</li>
<li> <a href="#">Another action</a>

</li>
<li> <a href="#">Something else here</a>

</li>
<li class="divider"></li>
<li class="nav-header">Nav header</li>
<li> <a href="#">Separated link</a>

</li>
<li> <a href="#">One more separated link</a>

</li>
</ul>
</li>
<li class="dropdown"> <a data-toggle="dropdown" class="dropdown-toggle" href="#">Dropdown<strong class="caret"></strong></a>

<ul class="dropdown-menu">
<li> <a href="#">Action</a>

</li>
<li> <a href="#">Another action</a>

</li>
<li> <a href="#">Something else here</a>

</li>
<li class="divider"></li>
<li class="nav-header">Nav header</li>
<li> <a href="#">Separated link</a>

</li>
<li> <a href="#">One more separated link</a>

</li>
</ul>
</li>
<li class="dropdown"> <a data-toggle="dropdown" class="dropdown-toggle" href="#">Dropdown<strong class="caret"></strong></a>

<ul class="dropdown-menu">
<li> <a href="#">Action</a>

</li>
<li> <a href="#">Another action</a>

</li>
<li> <a href="#">Something else here</a>

</li>
<li class="divider"></li>
<li class="nav-header">Nav header</li>
<li> <a href="#">Separated link</a>

</li>
<li> <a href="#">One more separated link</a>

</li>
</ul>
</li>
<li class="dropdown"> <a data-toggle="dropdown" class="dropdown-toggle" href="#">Dropdown<strong class="caret"></strong></a>

<ul class="dropdown-menu">
<li> <a href="#">Action</a>

</li>
<li> <a href="#">Another action</a>

</li>
<li> <a href="#">Something else here</a>

</li>
<li class="divider"></li>
<li class="nav-header">Nav header</li>
<li> <a href="#">Separated link</a>

</li>
<li> <a href="#">One more separated link</a>

</li>
</ul>
</li>
</ul>
<ul class="nav pull-right">
<li> <a href="#">Link</a>

</li>
<li class="divider-vertical"></li>
<li class="dropdown"> <a data-toggle="dropdown" class="dropdown-toggle" href="#">Dropdown<strong class="caret"></strong></a>

<ul class="dropdown-menu">
<li> <a href="#">Action</a>

</li>
<li> <a href="#">Another action</a>

</li>
<li> <a href="#">Something else here</a>

</li>
<li class="divider"></li>
<li> <a href="#">Separated link</a>

</li>
</ul>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="btn-group">
<button class="btn" type="button"><em class="icon-align-left"></em>

</button>
<button class="btn" type="button"><em class="icon-align-center"></em>

</button>
<button class="btn" type="button"><em class="icon-align-right"></em>

</button>
<button class="btn" type="button"><em class="icon-align-justify"></em>

</button>
</div>
</div>
</div>
</div>

更新

根据 Morpheus 的建议,现在两个 navbar 的行为都是独立的,主要错误仍然存​​在,这里有一个更新:

Click here to check the lastest example

提前致谢!

最佳答案

您应该更改 data-target=".navbar-responsive-collapse" 以定位唯一类,因为现在您同时定位两个具有相同类的 div。

示例

<a data-target=".unique" data-toggle="collapse" class="btn btn-navbar">
<div class="nav-collapse collapse navbar-responsive-collapse unique">

注意独特类。 jsfiddle

更新

我已经删除了这些样式:

.navbar-left {
position: relative;
top: 88px;
}

.navbar-inner {
position: relative;
top: -44px;
}

它解决了这个问题。我不知道这是否适合您,因为菜单改变了堆叠位置。 updated jsfiddle

关于jquery - Bootstrap - 响应式导航栏无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16652765/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com