【发布时间】:2016-04-13 04:15:14
【问题描述】:
我有一个带有响应式图像的页面作为封面背景。
在该图像的底部区域我有向下箭头,因此用户会知道在该图像下,有带有内容的 div。
背景图片分辨率:宽1920px,高1000px。
当我使用桌面全高清分辨率查看页面时,图像的高度几乎与全高清显示器上的高度相符,但如果我使用高度约为 768 像素的笔记本电脑查看页面,我必须将页面滚动到查看图像的其余部分。
这是我的代码:
<div class="image fitbg"></div>
.image {
background-image:url("path_of_the_image");
height:1000px;
}
.fitbg {
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
}
如何将图片高度设置为与设备高度一致?
所以,如果设备的高度为1000px,则图片的高度为1000px,但如果设备的分辨率为800px,则图片将从底部裁剪,分辨率设置为800px。
我从几个网站上看到了这些技巧,他们使用 Javascript 或 JavaScript 库 - jQuery,但我不明白他们是如何计算的。
我注意到,当我调整浏览器的大小时,它们的背景图像的高度总是在变化,因此图像总是停留在屏幕底部。
我怎样才能做到这一点?
编辑:这是具有此技巧的实时链接,因此很容易理解我想要实现的目标。
【问题讨论】:
-
把
background-position改成center bottom..? -
我已经尝试过了,但它并没有达到我想要的效果。当我向下滚动时,它会显示图像的其余部分。整个想法是自动更改高度,因此当我调整浏览器大小或以较小的分辨率查看时,图像将从底部裁剪。
-
好吧,你有一个 1000px 的固定高度,所以它当然需要在较小的屏幕上滚动。在调整大小时,您应该使用 JavaScript 将 div 的高度调整为视口的 100%。或者,根据您的浏览器支持要求,使用上面提到的
vh。
标签: javascript jquery css