【发布时间】:2017-06-23 02:27:47
【问题描述】:
我有一个 30% 宽的 div 并包含背景图片。图像本身约为 500 像素 x 300 像素。当浏览器足够宽以至于 30% 宽的 div 大约为 500px 时,整个图像可以很好地显示,没有裁剪或拉伸。但是当视口很窄并且 div 缩小到 300px 时,500px 的图像就会被裁剪。有没有办法拍摄大图像并将其强制放入较小的容器中,而不会裁剪并且不会丢失纵横比?如果不是,那么在我切换图像的媒体查询断点之间保持图像填充 div 而不裁剪或丢失纵横比的正确方法是什么?
【问题讨论】:
-
图片没有 100% 填满父元素你还好吗?因为这似乎是满足给定要求的唯一选择。
-
在img元素的style属性中设置宽度为100% -
<img src='image.png' style='width:100%' /> -
我实际上希望大图像能够 100% 填满包含它的较小 div。我只是不希望图像被截断/裁剪。这是一个图表的图像,如果只显示 1/2 的图像会看起来很奇怪,因为 div 太小而无法容纳整个东西。
-
我使用的是带有背景图像的 div,而不是
-
@johnsontroye 你真的应该有一个Minimal, Complete and Verifiable Example。这将使事情更容易理解并提供答案。目前听起来你需要使用
background-size: contain;。
标签: css image background-image