【问题标题】:Responsive bootstrap nav with a brand logo in the middle响应式引导导航,中间有品牌标志
【发布时间】:2017-03-12 03:49:49
【问题描述】:

我想要一个响应式导航栏,中间有 4 个链接和一个品牌徽标。我希望导航栏位于浏览器中间。但我在执行该布局时遇到了问题。
我怎样才能实现它?

.navbar-header {
  min-height: 150px;
}
.navbar {
  background: transparent;
  min-height: 113px;
  top: 0px;
  font-size: 18px;
  width: auto;
  border: none;
  padding: 0px 0px;
}
.navbar-default .navbar-nav > li > a {
  color: #fff;
}
.navbar-brand {
  padding: 0 15px;
  height: 113px;
}
@media (min-width: 768px) {
  .navbar-nav {
    position: relative;
    right: -50%;
  }
  .navbar-nav > li {
    position: relative;
    left: -50%;
  }
  .navbar-nav > li a {
    line-height: 113px;
    vertical-align: middle;
    padding: 0 24px;
  }
}
@media (min-width: 992px) {
  .navbar-nav > li a {
    padding: 0 48px;
  }
}
@media (min-width: 1200px) {
  .navbar-nav > li a {
    padding: 0 68px;
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<nav class="navbar navbar-default">
  <div class="container-fluid">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
        <span class="sr-only">Navigation ein-/ausblenden</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand hidden-sm hidden-md hidden-lg" href="#">
        <img src="images/brand.png" alt="Brand" width="310" />
      </a>
    </div>
    <div class="collapse navbar-collapse">
      <ul class="nav navbar-nav">
        <li><a href="#">Start</a>
        </li>
        <li><a href="#">Idee</a>
        </li>
        <li class="hidden-xs">
          <a href="#">
            <img src="images/brand.png" alt="Brand" width="310" />
          </a>
        </li>
        <li><a href="#">Leistungen</a>
        </li>
        <li><a href="#">Kontakt</a>
        </li>
      </ul>
    </div>
  </div>
</nav>

【问题讨论】:

    标签: css twitter-bootstrap navbar centering responsive


    【解决方案1】:

    希望对你有帮助

    .navbar-header {
    	min-height: 150px;
        }
        .navbar {
    	background: transparent;
    	min-height: 113px;
    	top: 0px;
    	font-size: 18px;
    	width: auto;
    	border: none;
    	padding: 0px 0px;
        }
        .navbar-default .navbar-nav > li > a {
    	color: #fff;
        }
        .navbar-brand {
    	padding: 0 15px;
    	height: 113px;
        }
        @media (min-width: 768px) {
        .navbar-nav {
    	position: relative;
    	right: -50%;
        }
        .navbar-nav > li {
    	position: relative;
    	left: -50%;
        }
        .navbar-nav > li a {
    	line-height: 113px;
    	vertical-align: middle;
    	padding: 0 24px;
         } 
        }
        @media (min-width: 992px) {
        .navbar-nav > li a {
    	padding: 0 48px;
         } 
        }
        @media (min-width: 1200px) {
        .navbar-nav > li a {
    	padding: 0 68px;
         } 
        }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
    <div class="container-fluid text-center">
      <nav class="navbar navbar-default">
    				<div class="container-fluid">
    					<div class="navbar-header">
    						<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
    							<span class="sr-only">Navigation ein-/ausblenden</span>
    							<span class="icon-bar"></span>
    							<span class="icon-bar"></span>
    							<span class="icon-bar"></span>
    						</button>
    						<a class="navbar-brand hidden-sm hidden-md hidden-lg" href="#"><img src="images/brand.png" alt="Brand" width="310"/></a>
    					</div>
    					<div class="collapse navbar-collapse">
    						<ul class="nav navbar-nav">
    							<li><a href="#">Start</a></li>
    							<li><a href="#">Idee</a></li>
    							<li class="hidden-xs"><a href="#"><img src="images/brand.png" alt="Brand" width="310" /></a></li>
    							<li><a href="#">Leistungen</a></li>
    							<li><a href="#">Kontakt</a></li>
    						</ul>
    					</div>
    				</div>
    			</nav>
    </div>

    【讨论】:

    • 感谢您的快速回复。但它不起作用:(
    • 你改变了什么? @Freeces 有什么不好的?
    • 刚刚用container-fluid 包裹了你的navbar 有课程text-center
    【解决方案2】:

    我建议你不要编辑引导样式,使用你自己的类。

    .navbar-brand {
      transform: translateX(-50%);
      left: 50%;
      position: absolute;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-15
      • 1970-01-01
      • 1970-01-01
      • 2017-05-30
      • 1970-01-01
      • 2021-07-25
      • 2016-08-25
      • 1970-01-01
      相关资源
      最近更新 更多