温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CSS怎么实现背景图尺寸不随浏览器缩放而变化

发布时间:2021-07-29 19:14:31 来源:亿速云 阅读:282 作者:chen 栏目:web开发

这篇文章主要讲解了“CSS怎么实现背景图尺寸不随浏览器缩放而变化”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS怎么实现背景图尺寸不随浏览器缩放而变化”吧!

一些网站的首页背景图尺寸不随浏览器缩放而变化,例如百度个人版的首页,缩放后背景图的尺寸并不改变:

CSS怎么实现背景图尺寸不随浏览器缩放而变化 
再比如花瓣网( huaban.com ):

CSS怎么实现背景图尺寸不随浏览器缩放而变化 

现在用CSS来实现这一效果。

首先需要一张足够大尺寸的图片,上图百度背景图的尺寸为1600*1000px( 图片地址:http://4.su.bdimg.com/skin/12.jpg?2 );花瓣背景图的尺寸为1600*1600px( 图片地址:http://hbfile.b0.upaiyun.com/img/unauth_page/food_bg.jpg );

然后有两种方法可以达到背景图不缩放的效果:

方法一. 把图片作为background

有几个CSS的属性要提一下:background-size:cover,这个CSS3的属性作用是把背景图像扩展至足够大,以使背景图像完全覆盖背景区域,背景图像的某些部分也许无法显示在背景定位区域中,如果不使用这个属性,在IE11和FireFox中缩放浏览器,背景图片会随之缩小,同时使用-webkit-background-size: cover和-o-background-size: cover兼容webkit内核浏览器和Opera浏览器;background-attachment属性设置背景图像是否固定或者随着页面的其余部分滚动,当设置为fixed时页面的其余部分滚动时,背景图像不会移动。

代码( 用了百度的星空图,效果和上面百度的截图一至 ):

HTML:

代码如下:


<div id="con"></div>


CSS:

代码如下:


body{ margin:0; padding:0;}
#con{
position:absolute;
top: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{ margin:0; padding:0;}
#pic{ width:100%;}

感谢各位的阅读,以上就是“CSS怎么实现背景图尺寸不随浏览器缩放而变化”的内容了,经过本文的学习后,相信大家对CSS怎么实现背景图尺寸不随浏览器缩放而变化这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

css
AI