css背景图片怎么自适应


本文摘自PHP中文网,作者anonymity,侵删。

一张清晰漂亮的背景图片能给网页加分不少,设计师也经常会给页面的背景使用大图,我们既不想图片因为不同分辨率图片变形,也不希望当在大屏的情况下,背景有一块露白,简而言之,就是实现能自适应屏幕大小又不会变形的背景大图,而且背景图片不会随着滚动条滚动而滚动,实现背景图片的自适应。

以下是用CSS实现的方法:

HTML:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<!DOCTYPE html>

<html>

<head>

    <meta http-equiv="content-type" content="text/html;charset=utf-8"/>

    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

    <title>title</title>

</head>

<body>

<div class="wrapper">

    <!--背景图片-->

    <div id="web_bg" style="background-image: url(./img/bg.jpg);"></div>

    <!--其他代码 ... -->

</div>

</body>

</html>

CSS:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

#web_bg{

  position:fixed;

  top: 0;

  left: 0;

  width:100%;

  height:100%;

  min-width: 1000px;

  z-index:-10;

  zoom: 1;

  background-color: #fff;

  background-repeat: no-repeat;

  background-size: cover;

  -webkit-background-size: cover;

  -o-background-size: cover;

  background-position: center 0;

}

下面,我们来分析一下,css中每句代码的作用是什么:

1

position:fixedtop: 0left: 0;

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

1

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

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

1

z-index:-10;

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

1

background-repeat: no-repeat;

上面这个是背景不要重复

1

2

3

background-size: cover;

 -webkit-background-size: cover;

 -o-background-size: cover;

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

1

background-position: center 0;

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

以上就是css背景图片怎么自适应的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

移动端全景装修图的实现实例分享

css怎么取消边框

css背景色怎么取消

css中伪类和伪元素的详细介绍(代码示例)

css如何设置对齐

css box-direction属性怎么用

css如何实现滑动门效果

css绝对定位详解

css3+javascript怎么做一个旋转的3d盒子?

css怎么设置字体居中?

更多相关阅读请进入《css》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...