【发布时间】:2018-02-21 15:29:39
【问题描述】:
我正在尝试找出让我的英雄/背景图像位于透明 Bootstrap 4 导航栏后面的最佳方式。一些建议是将背景图像应用到页面,这可行,但我不希望我的应用程序内所有其他静态页面上的背景图像......只有登录页面(Rails 应用程序)。
我尝试在导航栏和/或包含背景图像的容器上使用负边距,但到目前为止一切都带有负面影响。
我确信有一种简单的方法可以做到这一点,即使是我从 Bootstrap 中选择使用的特定导航栏,但我运气不佳。
更新:
从以下位置更改导航栏类:<nav class="navbar navbar-toggleable-md navbar-light bg-faded">
至:<nav class="navbar fixed-top navbar-expand-md navbar-light bg-faded">
达到了我想要的效果。
.navbar {
background-color: transparent !important;
}
.bgimg {
height: 600px;
background-image: url('https://images.unsplash.com/photo-1473923377535-0002805f57e8?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=d239ac0e409e18cf74ace503c491714f&auto=format&fit=crop&w=1469&q=80');
background-attachment: fixed;
background-position: center top;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
<nav class="navbar navbar-toggleable-md navbar-light bg-faded">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<a class="navbar-brand" href="#">Navbar</a>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<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 disabled" href="#">Link</a>
</li>
</ul>
</div>
</nav>
<div class="container-fluid bgimg"></div>
【问题讨论】:
-
为什么不使用固定导航栏? jsfiddle.net/mgys77se
-
Bootstrap 4 的 beta 版本现在真的开始过时了...
-
@ZimSystem 哦,天哪……这很简单。是的,它有效,但在 Bootstrap 4 中它只是
fixed-top而不是navbar-fixed-top我相信。我更新了我的问题以获得最新的 CDN。谢谢。 -
@WebDevBooster Gotcha...我更新了。谢谢。
-
navbar-toggleable-也需要替换为navbar-expand-
标签: css bootstrap-4