应该如何处理html的"高度"和"正文"的"背景图像"?



我不知道如何更好地总结这个问题,但问题在于此。正如Kevin Powell和其他人的最佳实践所建议的那样,我将html的height设置为100%,所以像页脚之类的东西使用空白并粘贴到页面的底部,然而,这带来了一个问题,即如果我想给我的body标记一个background-image,而当前页面是"0";"更高";图像将开始每隔100%的视口重复一次,即html标签设置的100%,这并不总是期望的结果。

不在body标记上使用background-image,我应该如何处理此问题?使用更好的平铺background-image

附言:我不想把我页面的所有内容都包装在body标签内的包装器div上。。。除非这是唯一的解决方案。body标签的min-height为100%,我目前在Firefox上。

我认为使用很容易解决

background-size: cover;

https://developer.mozilla.org/en-US/docs/Web/CSS/background-size

您还可以只使用背景简写来同时设置所有属性。

https://developer.mozilla.org/en-US/docs/Web/CSS/background

您可以通过设置min-height: 100vhhtml设置为占据用户屏幕的100%。然后您可以将body的高度设置为height: 100%以占用父级的高度(HTML),这样,如果内容不大于100vh,则htmlbody具有相同的高度。如果你想在页面中滚动时有相同的背景,你可以设置background-attachment: scrollbackground-repeat: no-repeat

像这个

html {
min-height: 100vh;
}
body {
height: 100%;
width: 100%;
background-image: url( /* put your background url here */ );
background-repeat: no-repeat;
background-size: cover;
background-attachment: scroll;
}

MDN 中的后台附件文档

相关内容

  • 没有找到相关文章

最新更新