重要更新:15/12/21
我发现Mozilla中存在一个错误,该错误通过此页面上的MANY DEMOS破坏了某些浏览器宽度上的导航栏。基本上,mozilla错误包括在navbar品牌链接上的左侧和右侧填充作为图像宽度的一部分。但是,可以很容易地解决此问题,并且我已经对此进行了测试,并且我很确定这是此页面上最稳定的工作示例。它将自动调整大小,并适用于所有浏览器。
只需将其添加到您的CSS并使用navbar-brand即可.img-responsive
。您的徽标将自动适合
.navbar-brand {
padding: 0px; /* firefox bug fix */
}
.navbar-brand>img {
height: 100%;
padding: 15px; /* firefox bug fix */
width: auto;
}
另一种选择是使用背景图像。使用任何大小的图像,然后设置所需的宽度:
.navbar-brand {
background: url(http://disputebills.com/site/uploads/2015/10/dispute.png) center / contain no-repeat;
width: 200px;
}
下面的原始答案(仅供参考)
人们似乎忘记了很多适合对象的东西。我个人认为这是最容易使用的一种,因为图像会自动调整为菜单大小。如果仅在图像上使用对象适合,它将自动调整为菜单高度。
.navbar-brand > img {
max-height: 100%;
height: 100%;
-o-object-fit: contain;
object-fit: contain;
}
有人指出,这在IE中还行不通。有一个polyfill,但是如果您不打算将其用于其他任何用途,则可能会过多。它的作用是什么样子对象配合正在计划为IE的未来的版本,以便一旦出现这种情况,这将在所有的浏览器。
但是,如果您注意到引导程序中的.img-response类,则max-width假定您将这些图像放入列或带有显式set的对象中。这将意味着100%具体表示父元素的100%宽度。
.img-responsive
max-width: 100%;
height: auto;
}
我们不能将其与导航栏一起使用的原因是,父级(.navbar-brand)的固定高度为50px,但未设置宽度。
如果我们采用该逻辑并将其反转为基于高度的响应方式,我们可以将响应图像缩放到.navbar品牌高度,并通过添加和自动设置宽度将其调整为比例。
max-height: 100%;
width: auto;
通常,我们必须添加display:block;
该方案,但是由于navbar-brand已经具有float:left; 应用于它,它自动充当一个块元素。
您可能会遇到徽标太小的罕见情况。img响应方法没有考虑到这一点,但我们会考虑。通过还将“ height”属性添加到,.navbar-brand > img
可以确保它会按比例缩放。
max-height: 100%;
height: 100%;
width: auto;
因此,为完成此操作,我将它们放在一起,它似乎在所有浏览器中均能完美运行。
<style type="text/css">
.navbar-brand>img {
max-height: 100%;
height: 100%;
width: auto;
margin: 0 auto;
/* probably not needed anymore, but doesn't hurt */
-o-object-fit: contain;
object-fit: contain;
}
</style>
<nav class="navbar navbar-default">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<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="http://disputebills.com"><img src="http://disputebills.com/site/uploads/2015/10/dispute.png" alt="Dispute Bills"></a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
</div>
</div>
</nav>
<img src="logo.png" width="27px" />
:调整