是否有一种方法来调整(缩小)图像按比例使用CSS?

我用的是JavaScript的方式,只是想看看CSS是否可行。


当前回答

如果是背景图片,使用background-size:contain。

css例子:

#your-div {
  background: url('image.jpg') no-repeat;
  background-size:contain;
}

其他回答

2015年回顾:

<img src="http://imageurl" style="width: auto; height: auto;max-width: 120px;max-height: 100px">

我重新访问了它,因为所有常见的浏览器现在都有上面Cherif建议的自动工作,所以它工作得更好,因为你不需要知道图像是否宽于高。

旧版本: 如果你被120x100的盒子限制,你可以这样做

<img src="http://image.url" height="100" style="max-width: 120px">
img{
    max-width:100%;
    object-fit: scale-down;
}

对我有用。它缩小较大的图像以适应方框,但较小的图像保持原始大小。

注意,width:50%将把它调整为图像可用空间的50%,而max-width:50%将把图像调整为其自然大小的50%。在手机网页设计中使用这一规则时,考虑到这一点非常重要,所以在手机网页设计中,应该总是使用max-width。

更新:这可能是Firefox的一个老bug,现在看来已经修复了。

我们可以在浏览器中使用CSS调整图像大小,使用媒体查询和响应式设计原则。

    @media screen and (orientation: portrait) {
img.ri {
    max-width: 80%;
  }
}

@media屏幕和(方向:横向){ img。Ri {max-height: 80%;} }

使用CSS按比例调整图像大小:

img.resize {
    width:540px; /* you can use % */
    height: auto;
}