html - 在 twitter bootstrap 导航栏中居中图像

标签 html css twitter-bootstrap

这是我的实时站点:http://ancient-badlands-4040.herokuapp.com/

我试图让我的图片居中,同时让链接与图片垂直对齐。

到目前为止,我在阅读这篇文章后得到了很多帮助 Twitter Bootstrap - centering brand logo in navbar

我早些时候通过调整“品牌”类(我将宽度设置为 28%)成功地使图像居中。不幸的是,我还必须调整“导航栏”类的宽度,调整宽度后它改变了我 Logo 的位置。

我将我的代码更改为下面的代码,我试图将我的图像居中并使链接与我的中心图像均匀对齐。

任何帮助将不胜感激,谢谢! :)

HTML:**更新的 div 和 ul 类

    <div class="navbar navbar-fixed-top">
  <div class="navbar-inner ">
    <div class="container-fluid">
      <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </a>
      <div class="nav-collapse collapse">
        <ul class="nav pull-right">
          <li><a>CODEY</a>
          </li>
          <li> <a>CODEY</a></li>
        </ul>

        <ul class="nav pull-left">
          <li><a>CODEY</a></li>
          <li><a>CODEY</a></li>
          <li><a>CODEY</a></li>
          </ul>

          <a class="brand"></a>
          <%= image_tag 'ctclogonewnobg.png', alt: 'logo' %>

        </div><!--/.nav-collapse -->
      </div>
    </div>
  </div>

CSS:

$navbarLinkColor: #90fce8;
$navbarBackground: #ff3600;
$navbarBackgroundHighlight: #ff3600;
$navbarText: Archivo Black, sans-serif;
@import url(http://fonts.googleapis.com/css?family=Archivo+Black);


@import 'bootstrap';

body {

    background: url('escheresque_@2X.png');
}


@import 'bootstrap-responsive';

.navbar-inner {
    @include box-shadow(none !important);
    border: 0;
    width: 100%%;
    margin: auto;
}



.navbar .brand {
    margin-left: auto;
    margin-right: auto;
    width: 20px;
    float: none;

}

最佳答案

以下是 CodePen 中的几个示例 - http://codepen.io/michaellee/pen/nLmJa

基本上第一个例子使用了 display: inline-block;将所有内容对齐并垂直对齐:中间; block 。

第二个示例更像您的示例,您可以在其中左右浮动导航并使用填充来创建垂直居中的外观。

HTML

<header>
  <ul class="nav-left">
    <li>item 1</li>
    <li>item 2</li>
    <li>item 3</li>
  </ul>
  <span class="logo">Logo!</span>
  <ul class="nav-right">
    <li>item 1</li>
    <li>item 2</li>
    <li>item 3</li>
  </ul>
</header>
<br />
<header class="second">
  <ul class="nav-left">
    <li>item 1</li>
    <li>item 2</li>
    <li>item 3</li>
  </ul>
  <span class="logo">Logo!</span>
  <ul class="nav-right">
    <li>item 1</li>
    <li>item 2</li>
    <li>item 3</li>
  </ul>
</header>

CSS

header{
  width: 100%;
  text-align: center;
  background: #e63100;
  display:block;
  overflow: hidden;
}
ul{
  list-style: none;
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  li{
    display: inline-block;
  }
}

.logo{
  font-size: 30px;
  vertical-align: middle;
  margin: 0 40px;
}

.second{
  .nav-left{
    float: left;
  }
  ul{
    padding: 30px 0;
  }
  .nav-right{
    float: right;
  }
  .logo{
    padding: 20px 0;
    display: inline-block;
  }
}

关于html - 在 twitter bootstrap 导航栏中居中图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17352791/

相关文章:

javascript - Bootstrap 3.4 中的容器流体未水平拉伸(stretch) 100%

html - 根据所选值更改列宽

html - CSS Div 布局拉伸(stretch)以适应宽度和高度

html - "Pivoting"带有 Bootstrap 3 流体网格的布局

html - 一旦我的内容超过页脚,我的页面就不会向下滚动

php - 在 php 电子邮件中以图像为中心的问题

javascript - 在Canvas中绘制物体的阴影

safari 中的 jQuery fancybox z-index 问题

javascript - 即使在包含 popper.js 之后仍然得到 "Uncaught Error: Bootstrap dropdown require Popper.js"

css - 显示为正方形的字形 (bootstrap 3.2.0)