请参阅示例:http://bit.ly/1H27G9I
我正在尝试更改标准bootstrap导航栏的样式,以便左侧和右侧有链接,然后是中间的徽标。我已经成功完成了定位,但是左侧链接不再可以点击了。我读到它可能与z-index有关,但似乎没有解决问题。
我已经附加了一些自定义CSS的html代码。非常感谢任何建议!
.headerlogo{
position: absolute;
width: 100%;
left: 0;
top: 0;
height: 125px;
}
.navbar-brand
{
padding-top: 35px;
width: 160px;
margin: 0 auto;
position: absolute;
left: 50%;
margin-left: -80px; /* Half the width */
}
.navbar-left {
padding-top: 35px;
padding-left: 200px;
}
.navbar-right {
padding-top: 35px;
padding-right: 200px;
}
@media (min-width: 970px){
.navbar-default {
height: 125px;
background-color: #151515;
}
.res-img {
max-width:160px;
margin-top: -15px;
}
}
@media (max-width: 970px){
.navbar-default {
height: 80px;
background-color: #151515;
}
.res-img {
max-width:100px;
margin-top: -15px;
}
.headerlogo
{
position: absolute;
width: 300px;
left: 0;
top: 0;
height: 125px;
}
.navbar-brand
{
float: left;
height: 50px;
padding: 15px 15px;
font-size: 18px;
line-height: 20px;
}
}
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<title>Bootstrap 101 Template</title>
<!-- Bootstrap -->
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet">
<!-- Custom CSS -->
<link href="custom.css" rel="stylesheet">
</head>
<body>
<nav class="navbar navbar-default" role="navigation" style="border-radius:0px;">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="navbar-collapse-1">
<ul class="nav navbar-nav navbar-left">
<li><a href="#">TILES</a></li>
<li><a href="#">BATHROOMS</a></li>
<li><a href="#">INSPIRATION</a></li>
</ul>
<div class="headerlogo">
<a class="navbar-brand" rel="home" href="#" title="logo">
<img class="res-img" src="img/logo.png">
</a>
</div>
<ul class="nav navbar-nav navbar-right">
<li><a href="#">SHOWROOMS</a></li>
<li><a href="#">CONTACT US</a></li>
<li><a href="#">CART</a></li>
</ul>
</div><!-- /.navbar-collapse -->
</nav>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</body>
</html>
答案 0 :(得分:4)
删除height: 125px;
类上的.headerLogo
属性。这导致div在宽度为100%时与第一个菜单项重叠。
答案 1 :(得分:1)
你说你不认为它是z指数。但是看看你的样本。我觉得是这样的。您的标题徽标位于绝对位置且与链接重叠。
做这样的事情应该解决它。
.headerlogo {
z-index:1;
}
.navbar-left {
position:relative;
z-index:9;
}
基本上,如果您打算以这种方式进行布局,那么您的导航需要比您的徽标具有更高的z-index。
另请注意,根据您的屏幕分辨率,这似乎有所不同。所以很有可能你看到它在某些分辨率上工作,而在其他分辨率上却被破坏了。
<强>截图强>
答案 2 :(得分:0)
你也可以申请: 的z-index:10 在css中包含div。
答案 3 :(得分:0)
这解决了问题
.navbar-header {
position:relative;
z-index: 9001;
}
.navbar-collapse {
z-index: 9000;
}