【发布时间】:2019-01-18 00:25:41
【问题描述】:
一般问题:
我想调整 CSS 背景图像的大小(不保持纵横比)并然后将background-size: contain 应用于同一张图像。反过来做会在一定程度上抵消contain 选项的效果。
这可以用 HTML/CSS 来完成,还是有必要将 Javascript 引入其中?在我的用例中,事先手动编辑图像是不可行的。
我的用例:
http://jsfiddle.net/h5a2nxfd/68/
我有一些图片想要以横向或纵向模式改变纵横比显示。上面的 JSFiddle 没有改变大小。
我曾尝试使用transform 来应用缩放,但在当前解决方案中,div.item 的宽度/高度是可变的,因此不太可行。
我愿意接受您的建议。我可能试图从错误的角度解决这个问题。但我宁愿不使用 Javascript。
编辑:在 JSFiddle 中使用的示例 SVG 图像中添加了圆圈。
【问题讨论】:
-
请注意:在您的代码 sn-p 中使用类似于圆形或其他东西的示例背景图像可能会更有帮助,因为使用纯色矩形无法区分外观无论他们是被倾斜到不同的纵横比还是被简单地剪裁。
-
你如何决定你想要改变的纵横比?
-
@kenS 好点。我更新了 JSFiddle。
-
@vals 所需的纵横比是恒定的并且事先已知,并且当前对于所有相关图片都是相同的。当前所需的宽高比为 4:3。
标签: css flexbox background-image background-size