我正在使用bootstrap作为网站标题。如果我想让网站的徽标响应,我应该有两个徽标图像(一个用于桌面,一个用于移动的)还是应该调整我的图像徽标的大小?什么是最好的方法来获得它?谢谢。这是我的代码:
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container-fluid"></div>
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" 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="#"><img src="~/Content/images/logo.png" /></a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li class="active"><a href="/">Home</a></li>
<li><a href="~/About/Index">About</a></li>
<li><a href="~/Contact/Index">Contacts</a></li>
</ul>
</div>
</nav>
7条答案
按热度按时间daupos2t1#
我不认为这个问题有一个单一的答案,但我会试图阐明一些你的选择。
使用Bootstrap,您可以将
.img-responsive
类添加到图像中,以使其根据页面宽度调整大小。通过添加
.img-responsive
类,Bootstrap 3中的图像可以变得响应友好。这将max-width: 100%;
、height: auto;
和display: block;
应用于图像,以便它可以很好地缩放到父元素。现在我将更进一步--拥有两张不同的图片。这与其说是台式机和移动的设备的区别,不如说是屏幕分辨率的区别。例如,视网膜屏幕将以更高的分辨率显示图像。许多人提供两张不同的图片,一张是正常分辨率,另一张是视网膜屏幕分辨率的两倍。
This tutorial强调了一些为Retina屏幕准备图像的方法,包括提供一个缩小的源图像或使用CSS Media Queries来更改图像的
src
。我还要补充的是,使用CSS Media Queries来更改图像的src
并不一定意味着用户必须下载同一图像的两个版本。kh212irz2#
Bootstrap的responsive image类将max-width设置为100%。这限制了它的大小,但并不强制它拉伸以填充比图像本身更大的父元素。你必须使用width属性来强制放大。
http://getbootstrap.com/css/#images-responsive
多亏了伊舍尔伍德
tvz2xvvm3#
添加类
您的图像
添加两张图片应该会更好。但是很多浏览器不知道你的小图片是为了响应(希望这很快会改变)。所以他们必须加载两张图片。这是沉重的(和缓慢)加载。
现在最好还是将类添加到映像中。
2skhul334#
你现在的图片,使用高度:100%和宽度:自动,应该会保持导航栏的大小。导航栏默认为50px高,无论你有什么设备。
qlzsbp2j5#
覆盖此类
63lcw9qa6#
在bootstrap中有一个类使图像具有响应性。
类为
img-responsive
把这个添加到你的img标签中,图像就会有响应。
wgx48brx7#
我更喜欢另一个解决方案。创建另一个类logo-navbar:
并将相关宽度应用于菜单字体大小:
这样,您的徽标将始终与您的导航栏内容进行调整。