我想在body里放一个背景图片,浏览的时候填充整个屏幕,请问这样的JS代码或CSS代码怎么写?
body {background:url() top center no-repeat; background-size:cover;}
这样的话背景图片就会填充整个屏幕了
不过要说明的是,这是一个CSS3的属性,在很多浏览器里面都是不被支持的,你所希望的效果,目前来看,只有这个属性可以做到,否则就只能用一个足够大的图片做背景的方法来实现了。
另外 background-size:cover;还可以替换成 background-size:contain;使用cover的意思是把背景图片充满整个容器,而不考虑是不是可以看到完整的图片;使用contain的意思是在容器里完整显示图片,而不考虑容器是否被填满。
网页中到底怎样根据不同分辨率设置网页背景图片铺满屏幕?我的一种想法是用JS读取屏幕分辨率。求老师指教
获取浏览器可见区高度(滚动条宽度以排除)
获取浏览器可见区宽度(滚动条宽度以排除)
获取文档高度(建议用浏览器可见区域高度)
用screen获得的为屏幕分辨率,只有用户在全屏看网页时网页大小才等于屏幕的分辨率
设置body的背景
=‘图片地址’
这种方法是比较精确的控制方法,可以根据获取到的相关大小来控制背景图片
这种方法的好处就是:如果你的同一个背景图片有很多不同的分辨率,在页面呈现上会更美观
缺点是:必须根据多种不同大小制作多张背景图片,且调用哪张图片不易确定
用绝对定位设置背景的方式的好处是:方便代码的书写
绝对定位缺点是:背景图片要大而清晰,否则在大尺寸屏幕上会出现背景图片模糊的情况,且若图片比例与屏幕比例不同(如4:3和16:9),图片会变形
如何将背景图片占满整个网页CSS,JS都可以
background-image: url(图片存在路径);
background-repeat: no-repeat;
background-size: 100% 100%;