【问题标题】:Fit image to bootstrap navbar height responsively以响应方式使图像适应引导导航栏高度
【发布时间】:2016-02-29 00:23:08
【问题描述】:

我想知道如何使图像适合引导导航栏高度(按比例),这是一个描述性图像:

有什么想法吗?

我正在使用这个结构:

<nav class="navbar navbar-default">
  <divclass="container-fluid">
    <div class="navbar-header">
      <a class="navbar-brand" href="#">
        <img alt="Brand" src="...">
      </a>
    </div>
  </div>
</nav> 

【问题讨论】:

    标签: css twitter-bootstrap-3 responsive-design


    【解决方案1】:

    如果您只是想调整图像的大小以对应默认navbar (min-height: 50px) 的高度,只需根据您希望图像适合的方式使用下面的 CSS 作为基础.

    在本例中,图像将完全覆盖navbar 的一部分。

    查看工作片段。

    body {
      padding-top: 70px;
    }
    .navbar.navbar-inverse {
      border: none;
    }
    .navbar .navbar-brand {
      padding-top: 0px;
    }
    .navbar .navbar-brand img {
      height: 50px;
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet" />
    <nav class="navbar navbar-inverse navbar-fixed-top">
      <div class="container-fluid">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
    
          </button>
          <a class="navbar-brand" href="#">
            <img src="http://placehold.it/350x150/f00/fff">
          </a>
    
        </div>
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
          <ul class="nav navbar-nav">
            <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a>
    
            </li>
            <li><a href="#">Link </a>
    
            </li>
            <li><a href="#">Link </a>
    
            </li>
            <li><a href="#">Link </a>
    
            </li>
            <li><a href="#">Link </a>
    
            </li>
          </ul>
        </div>
      </div>
    </nav>
    <div class="container text-center">
      <img src="http://placehold.it/350x150/f00/fff" />
      <h4>The Same Image At Full Scale</h4>
    
    </div>

    【讨论】:

    • 但是,如果移动设备上的导航栏较小,如何使其响应?
    【解决方案2】:

    在我以前的项目中,我也遇到了一些问题。以下是我解决问题的方法:

    HTML:

    <nav id="myNavbar" class="navbar navbar-inverse navbar-fixed-top" role="navigation">
        <div class="container">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-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>
    
                <a class="navbar-brand" href="index.html" class="smoothScroll"><img src="img/logo.png" ondragstart="return false;" alt="logo"/></a>
            </div>
    
            <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
                <ul class="nav navbar-nav" >
                    <li>
                        <a>Menu Item1</a>
                    </li>
                </ul>
            </div>            <!-- /.navbar-collapse -->
        </div>        <!-- /.container -->
    </nav>
    

    以及它的 CSS:

    .navbar-fixed-top {height: 40px;}
    .navbar-brand img {height: 40px;}
    

    因此将导航栏和徽标图像设置为相同的高度(而不是给它宽度,因此它会自动调整)通过良好的定位解决了我的问题。两种可能的情况:

    1. 你想要一个固定的导航栏:

      .navbar-brand img {position:fixed;right:0;top:0}

    2. 你想要一个顶部的标题:

      .navbar-brand img {position:absolute;right:0;top:0}

    在这两种情况下,我都将其设置为网站的右上角,但您可以轻松地进行调整。所以关键是:导航栏和图片高度一致,图片定位好。 (然后可以在 CSS 中轻松设置边距填充或图像的确切位置)

    希望对你有所帮助, 安德鲁

    编辑:关于固定导航栏,请查看 Bootstrap 文档(它具有内置类,如 navbar-fixed-top 等)。

    【讨论】:

      猜你喜欢
      • 2014-12-14
      • 1970-01-01
      • 2019-03-16
      • 2017-09-12
      • 2021-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多