使 Bootstrap 静态导航栏覆盖内容类似于固定导航栏
Make Bootstrap static-navbar overlay content like fixed-navbar
使用bootstrap 3. 我有一个具有背景图案的全屏hero/intro 部分。
我想要什么:
- 覆盖此英雄部分的静态导航栏,以便英雄部分的背景图案显示在导航栏的背景中(就像我使用 "navbar-fixed-top" 而不是 "navbar-static-top" 一样)。
我希望它看起来像什么(导航栏固定顶部样式):
- 当导航栏在移动视图中折叠时,汉堡包图标会显示导航栏链接,而不会下推英雄部分。
发生了什么:
- 使用 "static" 在英雄部分之前堆叠导航栏部分而不是覆盖它
- 按下汉堡图标会下推英雄部分而不是覆盖它
知道如何在不给英雄部分负利润的情况下实现这一点吗?
我的HTML:
<nav class="navbar navbar-static-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-main-collapse">
<i class="fa fa-bars"></i>
</button>
<div class="navbar-brand" href="#page-top">
<img src="http://placehold.it/200x80" alt=" Logo" width="100">
</div>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div id="navbar-main-collapse" class="collapse navbar-collapse navbar-right">
<ul class="nav navbar-nav">
<li class="active"><a href="..." target="_blank"><i class="fa fa-folder-open"></i> Link 1</a></li>
</ul>
</div>
<!-- /.navbar-collapse -->
</div>
<!-- /.container -->
</nav>
<section id="hero" class="full-screen-section">
<div class="cell-mid">
<div class="section-body">
<div class="container">
<div class="row">
<div class="col-md-2 col-md-offset-1 text-right">
<img src="http://placehold.it/300x120" id="faceOne" class="img-max hidden-xs hidden-sm">
</div>
<div class="col-md-6 text-left">
<h1 class="brand-heading">EXAMPLE HEADING</h1>
</div>
<div class="col-md-2 text-left">
<img src="http://placehold.it/300x120" id="faceTwo" class="img-max hidden-xs hidden-sm">
</div>
</div>
</div>
</div>
</div>
</section>
我的CSS:
/* --------------- Nav --------------- */
.navbar {
padding: 1em 0;
margin-bottom: 0;
border: none;
text-transform: uppercase;
background-color: transparent;
background-image: none;
}
.navbar a {
color:#fff;
}
/* --------------- Hero --------------- */
#hero {
display: table;
width: 100%;
height: 100%;
padding: 200px 0 50px 0;
text-align: center;
color: #fff;
background: linear-gradient(
rgba(248, 153, 153, 0.68),
rgba(248, 153, 153, 0.68)), url('bg-science.png');
-webkit-box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
-moz-box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
}
编辑:
找到解决方案,感谢@airbean。刚刚使用了 navbar-fixed-top class 并在导航栏 class.
上添加了 "position: absolute"
@Aibrean 帮忙了。我使用了 navbar-fixed-top class 并在导航栏 class.
上添加了 "position: absolute"
我知道这是一个旧话题,但我遇到了同样的问题,我将导航栏绝对定位,导航栏右侧的链接变成了左侧。
使用bootstrap 3. 我有一个具有背景图案的全屏hero/intro 部分。
我想要什么:
- 覆盖此英雄部分的静态导航栏,以便英雄部分的背景图案显示在导航栏的背景中(就像我使用 "navbar-fixed-top" 而不是 "navbar-static-top" 一样)。
我希望它看起来像什么(导航栏固定顶部样式):
- 当导航栏在移动视图中折叠时,汉堡包图标会显示导航栏链接,而不会下推英雄部分。
发生了什么:
- 使用 "static" 在英雄部分之前堆叠导航栏部分而不是覆盖它
- 按下汉堡图标会下推英雄部分而不是覆盖它
知道如何在不给英雄部分负利润的情况下实现这一点吗?
我的HTML:
<nav class="navbar navbar-static-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-main-collapse">
<i class="fa fa-bars"></i>
</button>
<div class="navbar-brand" href="#page-top">
<img src="http://placehold.it/200x80" alt=" Logo" width="100">
</div>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div id="navbar-main-collapse" class="collapse navbar-collapse navbar-right">
<ul class="nav navbar-nav">
<li class="active"><a href="..." target="_blank"><i class="fa fa-folder-open"></i> Link 1</a></li>
</ul>
</div>
<!-- /.navbar-collapse -->
</div>
<!-- /.container -->
</nav>
<section id="hero" class="full-screen-section">
<div class="cell-mid">
<div class="section-body">
<div class="container">
<div class="row">
<div class="col-md-2 col-md-offset-1 text-right">
<img src="http://placehold.it/300x120" id="faceOne" class="img-max hidden-xs hidden-sm">
</div>
<div class="col-md-6 text-left">
<h1 class="brand-heading">EXAMPLE HEADING</h1>
</div>
<div class="col-md-2 text-left">
<img src="http://placehold.it/300x120" id="faceTwo" class="img-max hidden-xs hidden-sm">
</div>
</div>
</div>
</div>
</div>
</section>
我的CSS:
/* --------------- Nav --------------- */
.navbar {
padding: 1em 0;
margin-bottom: 0;
border: none;
text-transform: uppercase;
background-color: transparent;
background-image: none;
}
.navbar a {
color:#fff;
}
/* --------------- Hero --------------- */
#hero {
display: table;
width: 100%;
height: 100%;
padding: 200px 0 50px 0;
text-align: center;
color: #fff;
background: linear-gradient(
rgba(248, 153, 153, 0.68),
rgba(248, 153, 153, 0.68)), url('bg-science.png');
-webkit-box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
-moz-box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.5);
}
编辑: 找到解决方案,感谢@airbean。刚刚使用了 navbar-fixed-top class 并在导航栏 class.
上添加了 "position: absolute"@Aibrean 帮忙了。我使用了 navbar-fixed-top class 并在导航栏 class.
上添加了 "position: absolute"我知道这是一个旧话题,但我遇到了同样的问题,我将导航栏绝对定位,导航栏右侧的链接变成了左侧。