CSS背景图片自适应屏幕代码示例

Admin 2021-04-17 群英技术资讯 509 次浏览

       很多人在做网站页面设计的时候,经常会用一张图片来做背景,这时我们就需要考虑网页兼容各种屏幕大小,背景图片要能够按比例缩放来自适应屏幕的宽度。那么这个效果是如何实现的呢?下面是具体的实现代码,感兴趣的朋友一起来学习一下吧。

       html代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <link rel="stylesheet" href="../css/login.css"><!-- 我的css代码路径 -->

    <title>。。。</title>
</head>

<body>
    <div class="bgimg">
</body>

</html>

       css代码如下:

.bgimg{
    position:fixed;
    top: 0;
    left: 0;
    width:100%;
    height:100%;
    min-width: 1000px;
    z-index:-10;
    zoom: 1;
    background-color: #fff;
    background: url(../img/bg_login.jpg) no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    -o-background-size: cover;
    background-position: center 0;
}

       分析一下css代码中的作用:

position:fixed;
top: 0;
left: 0;

       这三句是让整个div固定在屏幕的最上方和最左方

width:100%;
height:100%;
min-width: 1000px;

       上面前两句是让整个div跟屏幕大小一样,从而达到全屏效果。而min-width是为了实现让屏幕宽度在1000px以内时,div的大小保持不变,也就是图片不缩放。

z-index:-10;  

       这个的目的是让整个div在HTML页面中各个层级的下方,正常情况下,默认创建的层级z-index的值是0,所以如果我们这里写成-1也可以实现,不过这里写-10是确保整个div在最下面,因为如果页面中层级太多了,有的时候用-1不一定在最下面,但如果写成-100这样大数字的也没有什么意义。用-10 以此能达到看上去像背景图片,其实是一个最普通的div,只是层级关系变了,才让人看上去看是背景图片。

zoom: 1;

       zoom是CSS hack中专对IE6起作用的部分。IE6浏览器会执行zoom:1表示对象的缩放比例。兼容IE6、IE7、IE8浏览器,经常会遇到一些问题,可以使用zoom:1来解决,zoom有如下作用:1.触发IE浏览器的haslayout; 2.解决ie下的浮动,margin重叠等一些问题。

background-repeat: no-repeat; 

       图片平铺,不重复

background-size: cover;
-webkit-background-size: cover;
-o-background-size: cover;

       上面三句是一个意思,就是让图片随屏幕大小同步缩放,但是有部分可能会被裁切,不过不至于会露白,下面两句是为chrome和opera浏览器作兼容。

background-position: center 0;

       上面这句的意思就是图片的位置,居中,靠左对齐

       效果如下:

       大于1000px时:(截图太大了,我把图片缩小了点)

       小于1000px时:

       原图:(这个也太大了缩小了点)

       以上就是CSS实现背景图片自适应屏幕的介绍,以上有具体的代码和代码详解,有需要的朋友可以多看看,希望对大家有帮助。

群英智防CDN,智能加速解决方案
标签: CSS背景图片

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

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服