CSS实现背景图尺寸不随浏览器缩放而变化的两种
网站建设 2023-01-28 21:39www.1681989.com免费网站
一些网站的首页背景图尺寸不随浏览器缩放而变化,例如百度个人版的首页,缩放后背景图的尺寸并不改变
再比如花瓣网( huaban. )
现在用CSS来实现这一效果。
需要一张足够大尺寸的图片,上图百度背景图的尺寸为16001000px( 图片地址http://4.su.bdimg./sk/12.jpg?2 );花瓣背景图的尺寸为16001600px( 图片地址http://hbfile.b0.upaiyun./img/unauth_page/food_bg.jpg );
然后有两种方法可以达到背景图不缩放的效果
方法一. 把图片作为background
有几个CSS的属性要提一下background-sizecover,这个CSS3的属性作用是把背景图像扩展至足够大,以使背景图像完全覆盖背景区域,背景图像的某些部分也许无法显示在背景定位区域中,如果不使用这个属性,在IE11和FireFox中缩放浏览器,背景图片会随之缩小,使用-webkit-background-size: cover和-o-background-size: cover兼容webkit内核浏览器和Opera浏览器;background-attachment属性设置背景图像是否固定或者随着页面的其余部分滚动,当设置为fixed时页面的其余部分滚动时,背景图像不会移动。
代码( 用了百度的星空图,效果和上面百度的截图一至 )
HTML
<div id="con"></div>
CSS
body{ marg:0; paddg:0;}
#con{
position:absolute;
:0;
left:0;
height:100%;
width:100%;
background-image:url("maskimg/star.jpg");
background-position: center 0;
background-repeat: no-repeat;
background-attachment:fixed;
background-size: cover;
-webkit-background-size: cover;/ 兼容Webkit内核浏览器如Chrome和Safari /
-o-background-size: cover;/ 兼容Opera /
zoom: 1;
}
方法二.不把图片作为背景,而是使用<img>标签,效果是图片尺寸不会随浏览器缩放而变化,如果有竖直滚动条时,图片不会固定而会随滚动条移动。只需要把图片的宽度width设置成100%就行了。
代码很简单,只有几行,用的还是百度的星空图
HTML
<div id="con"><img id="pic" src="maskimg/star.jpg"></div> _fcksavedurl=""maskimg/star.jpg"></div>"
CSS
body{ marg:0; paddg:0;}
#pic{ width:100%;}
再比如花瓣网( huaban. )
现在用CSS来实现这一效果。
需要一张足够大尺寸的图片,上图百度背景图的尺寸为16001000px( 图片地址http://4.su.bdimg./sk/12.jpg?2 );花瓣背景图的尺寸为16001600px( 图片地址http://hbfile.b0.upaiyun./img/unauth_page/food_bg.jpg );
然后有两种方法可以达到背景图不缩放的效果
方法一. 把图片作为background
有几个CSS的属性要提一下background-sizecover,这个CSS3的属性作用是把背景图像扩展至足够大,以使背景图像完全覆盖背景区域,背景图像的某些部分也许无法显示在背景定位区域中,如果不使用这个属性,在IE11和FireFox中缩放浏览器,背景图片会随之缩小,使用-webkit-background-size: cover和-o-background-size: cover兼容webkit内核浏览器和Opera浏览器;background-attachment属性设置背景图像是否固定或者随着页面的其余部分滚动,当设置为fixed时页面的其余部分滚动时,背景图像不会移动。
代码( 用了百度的星空图,效果和上面百度的截图一至 )
HTML
复制代码
代码如下:<div id="con"></div>
CSS
复制代码
代码如下:body{ marg:0; paddg:0;}
#con{
position:absolute;
:0;
left:0;
height:100%;
width:100%;
background-image:url("maskimg/star.jpg");
background-position: center 0;
background-repeat: no-repeat;
background-attachment:fixed;
background-size: cover;
-webkit-background-size: cover;/ 兼容Webkit内核浏览器如Chrome和Safari /
-o-background-size: cover;/ 兼容Opera /
zoom: 1;
}
方法二.不把图片作为背景,而是使用<img>标签,效果是图片尺寸不会随浏览器缩放而变化,如果有竖直滚动条时,图片不会固定而会随滚动条移动。只需要把图片的宽度width设置成100%就行了。
代码很简单,只有几行,用的还是百度的星空图
HTML
复制代码
代码如下:<div id="con"><img id="pic" src="maskimg/star.jpg"></div> _fcksavedurl=""maskimg/star.jpg"></div>"
CSS
复制代码
代码如下:body{ marg:0; paddg:0;}
#pic{ width:100%;}