我的图像大小为3800x2000。我现在想要在CSS中做的是使3800的宽度始终完全适合浏览器的宽度,并始终具有所显示图像的完整高度。意味着我必须向下滚动broswer才能看到图像的结尾。我说的是背景图片。非常感谢你提前。
答案 0 :(得分:1)
首先,非常感谢你的回答。在几个屏幕上完美测试的是
<img src="bg.jpg" style="width: 100%; position: absolute;"/>
那为我做了。再次感谢你。
答案 1 :(得分:0)
实际上很简单
img {
width: 100%;
}
<img src="http://www.jpl.nasa.gov/spaceimages/images/mediumsize/PIA17011_ip.jpg">
html, body {
width: 100%;
height: 100%;
}
div {
width: 100%;
height: 100%;/*or 9999px*/
background-size: cover;
background-image:url(http://www.jpl.nasa.gov/spaceimages/images/mediumsize/PIA17011_ip.jpg)
}
<div></div>
您可以增加height
上的div
,或将其保留为100%
window.onresize = function () {
var elems = document.getElementsByClassName('adjustwidth'),
i;
for (i = 0; i < elems.length; i += 1) {
elems[i].style.width = (window.innerWidth || 0) + 'px';
}
}
window.onresize();
<img class="adjustwidth" src="http://www.jpl.nasa.gov/spaceimages/images/mediumsize/PIA17011_ip.jpg" />
我提供JavaScript解决方案的原因是父母宽度不是100%的元素,它仍然有效。
答案 2 :(得分:0)
使用background-size: 100% 2000px;
如果你想保持高度正好是2000px,或者如果你想在不改变宽高比的情况下包含bg图像(在你的情况下,图像尺寸将变为&lt;窗口高度。因此没有滚动来看到img结束)使用background-size:contain
。如果它是身体背景并且您希望它覆盖身体,那么使用background:cover
答案 3 :(得分:0)