使用 CSS 缩放图像以适合边界框
在图像大于其容器的情况下,CSS 使用 max 提供了一个简单的解决方案-width 和 max-height 属性。然而,当目标是放大图像直到其某个尺寸填满整个容器时,这种方法就不够了。
CSS3 解决方案
感谢 CSS3,有一个可行的解决方案,利用background-image和background-size属性:
HTML:
<code class="html"><div class="bounding-box"> </div></code>
CSS:
<code class="css">.bounding-box { background-image: url(...); background-repeat: no-repeat; background-size: contain; }</code>
此方法可确保图像缩放以适合边界框,同时保持其纵横比。在这里测试一下:http://www.w3schools.com/cssref/playit.asp?filename=playcss_background-size&preval=contain。
对齐和兼容性
对于支持CSS3的浏览器,此方法完全兼容。要使 div 居中,请使用以下变体:
<code class="css">.bounding-box { background-image: url(...); background-size: contain; position: absolute; background-position: center; background-repeat: no-repeat; height: 100%; width: 100%; }</code>
通过利用背景大小属性,CSS3 提供了一种方便有效的方法来缩放图像以适合边界框,保留图像比例并允许灵活对齐选项。
以上是如何使用 CSS 缩放图像以适应边界框,同时保持其纵横比?的详细内容。更多信息请关注PHP中文网其他相关文章!