在Bootstrap响应式网格中裁剪图像以符合比例

17
问题: 我正在尝试将图片放置在Twitter Bootstrap的响应式网格系统中,以便它们会按照给定的空间进行缩放(对于响应式CSS大小,列的大小会因不同设备而异)。我希望它们能适合长宽比 - 让我们假设它是正方形。

标准CSS裁剪技术如果我希望图像由Bootstrap重新缩放以适应网格设计,则无法使用。负边距仅适用于切割顶部和底部部分 - 当必须切割图像的高度时,并且宽度保持不变(例如将肖像图像放入正方形中)。

我发现这个技巧可以指定长宽比,剪切宽度并保持高度不变(将横向图像放入正方形中),与Bootstrap的缩放配合效果很好。

这个例子(jsfiddle)显示了大小为1600x400和400x1600的裁剪图像。到目前为止,我已经在当前版本的Chrome和Safari中进行了检查。编辑:修复了Firefox中也可以工作的问题。

问题: 我如何使用一种方法来同时剪切宽度和高度?如何对图像进行任意裁剪,选择矩形区域以便被Bootstrap正确缩放?

感谢您的任何想法!

1个回答

24

如果您的解决方案只需要在现代浏览器中运行而且img标签不是必需的,那么在响应式设计中经常使用图像作为背景可以帮助我很多。您可以轻松地将背景定位在中心,并使其适应其容器。

http://jsfiddle.net/willemvb/wAqSV/2/


它看起来很棒,而且运作正常,但它是为我居中裁剪的情况设计的。我需要使用它来选择从两侧裁剪多少(例如,人的脸在顶部,我总是需要展示它)。我的想法可以做到这一点,但我不知道如何在CSS中处理背景:(你的解决方案看起来很好,我不需要知道图像的纵横比,所以如果我能使用它就太好了。理想情况下,如果我能标记这个点并要求它尽可能靠近中心,那就太好了,但我想这是另一个问题。无论如何,谢谢! - Marcin Skórzewski
我觉得我期望太高了。将裁剪后的图像从中心移动,而不知道其宽高比?我有点学术化了,我已经有可以使用的东西了 :) 再次感谢! - Marcin Skórzewski
你可以使用额外的类,并将背景定位为百分比或上/下/左/右来移动图像,但当然需要手动设置才能正确地完成此操作。http://jsfiddle.net/willemvb/wAqSV/4/ - Willem Van Bockstal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接