作用于body上时,背景图片会铺满整个浏览器窗口;而作用于div上时,只会铺满div的范围。
对。同时,div的背景图可以设置不平铺,更灵活;而body的背景图通常是固定的,整个网页的背景。因此,在需要多个不同的区域的背景图的情况下,使用div更好。
其实主要是因为body的大小会跟随着网页大小的改变而改变,而div不会。所以其实如果div足够大,也是会发生平铺的。你可以试一试将div的width和height都设置为100%,也会平铺的:
<body>
<div style="width: 100%; height: 100%"></div>
</body>
当然,如果要禁用平铺,设置background-repeat为no-repeat就行了。
不知道你这个问题是否已经解决, 如果还没有解决的话:1.当设置背景图片时,作用于body和div上的区别在于,body元素会将背景图片拉伸至整个页面,而div元素只会将背景图片拉伸至div元素的大小。
2.
为什么缩放的时候div的大小没有发生变化,而作用于body的大小改变了,所以body上图片平铺了
这是因为div元素的大小是固定的,而body元素的大小会随着浏览器窗口的大小而变化,因此当缩放的时候,div的大小不会发生变化,而body的大小会发生变化。