如何在不损失比例的情况下缩放背景图片
我想创建一个填充整个背景的网页背景图片,而不会扭曲图片并改变图片的比例。
例如,您可以在LaunchRock的页面以及主页上看到这一点。
我在StackOverflow上看到了这个问题,但是如果您仔细研究产生的内容,就会发现背景图像的高度为100%,宽度为100%,这意味着不会保留照片的原始比例并且图像被拉伸。
在LaunchRock示例中注意,如果调整浏览器窗口的大小,则图像会按比例增长,并始终填充整个窗口(不管它们使用的窗口大小或背景图像大小)。
如果浏览器窗口不够宽,则会裁剪背景图像的两侧(保持图像居中并裁剪左侧和右侧),如果窗口不够高,则会裁剪背景图像的底部。
无论浏览器窗口的大小如何,都会保留图片高度/宽度比率并填充整个背景。
我猜这不能用纯CSS完成,可能需要一些JavaScript。 有任何想法吗?
谢谢
它只用CSS来完成,就像这样:
body {
background: black url(/images/back.jpg) no-repeat top center fixed;
-webkit-background-size: cover;
background-size: cover;
}
使之成为可能的东西:
background-size
设置为cover
及其供应商前缀版本 background-image
top center
fixed
属性 如果你不介意使用jQuery,你可以试试http://srobbin.com/jquery-plugins/backstretch/。
例如:http://jsfiddle.net/rPhLa/
你必须设置:
html,body{ height:100%; width:100%; }
所以他们占据整个屏幕,然后是背景:
body { background-image: url(http://launchrock.com/images/back.jpg); background-repeat: no-repeat; background-position:center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
链接地址: http://www.djcxy.com/p/89167.html
上一篇: How to scale a background image without losing proportions