我正在网站上工作,我希望导航(仅限主页)透明,图像覆盖整个屏幕。这就是我到目前为止所做的:
导航栏以这种方式设置样式,因为它就是在其他页面上的样式。
这是我的HTML:
<div class="container-fluid">
<nav class="navbar navbar-expand-lg navbar-light bg-light fixed-top navbar-trans" id="mainNav">
<a class="navbar-brand js-scroll-trigger" href="#page-top">
<img class="logo" src="app/assets/images/bunklogo.png" alt="bunk">
Bunk.
</a>
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
Menu
<i class="fa fa-bars"></i>
</button>
<div class="collapse navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav ml-auto">
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="#tenant">TENANT</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="landlord.html">LANDLORD</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="#bunkfaqs">BUNK FAQs</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="#blog">BLOG</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="#team">TEAM</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="#login">LOG IN</a>
</li>
<li class="nav-iten">
<button class="btn signup"> SIGN UP</button>
</li>
</ul>
</div>
</nav>
</div>
和我的css:
#mainNav {
background-image: linear-gradient(90deg, #439EE0 0%, #26ADE6 100%);
/*margin-top: -0.5%;*/
padding-top: 1rem;
padding-bottom: 3rem;
margin-bottom: 0;
}
.navbar-toggler.navbar-toggler-right {
color:white;
border: 1px solid white;
font-size: 1.2rem;
padding: 1rem;
}
.navbar-light .navbar-nav .nav-link {
font-size: 1.2rem;
color: #ffffff;
letter-spacing: 0.8px;
text-align: center;
padding-right: 5rem;
}
.navbar-brand.js-scroll-trigger {
color: #ffffff;
font-size: 2rem;
}
有什么建议吗?
答案 0 :(得分:3)
这里不需要任何自定义css hacks。
要使您的Bootstrap导航栏透明,您只需删除课程bg-light
即可。
就是这样!
bg
中的bg-light
代表“背景”。因此,如果您忽略课程背景颜色,您将自动拥有透明导航栏。
答案 1 :(得分:0)
好的,首先你需要将主页与其他页面分开。要执行此操作,只需在您的身体部分插入ID,例如 #home 。
因此,在这种情况下,您将添加以下内容:
body#home #mainNav {
background:transparent;
background-image:none;
position:absolute;
width:100%;
left:0px;
right:0px;
top:0px;
}
不要忘记你的Slider(或者你在#mainNav之后没有),可能需要一些padding-top等于#mainNav高度,例如(如果你的#mainNav高度为50px) ):
.slider {
padding-top:50px;
}
答案 2 :(得分:0)
您只能在index.html上为导航栏添加额外的课程。 (或您的主页html文件名。)
<nav class="navbar navbar-expand-lg navbar-light bg-light fixed-top navbar-trans navbar--home" id="mainNav">
然后你可以选择这个类:
#mainNav.navbar--home{
background:transparent;
}
答案 3 :(得分:0)
使用主页正文类,例如:&#34; .home / .home-index / .index-page&#34;作为&#34; .nav.fixed-top&#34;的父母。容器
CSS ::
.home .nav.fixed-top{
background:rgba(0, 0, 0, 0) none repeat scroll 0 0;
}