CSS3关于background-size属性

     bachground-size属性就是定义背景图片的大小,其值有:auto , 像素值 , 百分比 , cover  ,  contain 。

     background-size: auto,默认值,以图片自身大小填充元素,根据元素大小来调节自身比例,不会让图片变形。                   

<!DOCTYPE html>
<html>
<head>
    <meta  charset="utf-8">
    <title>background-size属性</title>
    <style type="text/css">
      div{
          width:300px;
          height:150px;
          border:1px solid black;
          background:url("photo.jpg") no-repeat;
      }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

        背景图片本身大小—width:200px ,height:133px ,上述代码的效果图如下:

                            

                               像素值,比如 30px  50px,分别表示width  height

<!DOCTYPE html>
<html>
<head>
    <meta  charset="utf-8">
    <title>background-size属性</title>
    <style type="text/css">
      div{
          width:300px;
          height:150px;
          border:1px solid black;
          background:url("photo.jpg") no-repeat;
          background-size:250px 100px;
      }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

               将图片的width设置为250px,height设置为100px,效果图为:

                                            

                               百分比,比如  30%  50%,分别表示width   height ,该百分比相对于本元素            

<!DOCTYPE html>
<html>
<head>
    <meta  charset="utf-8">
    <title>background-size属性</title>
    <style type="text/css">
      div{
          width:300px;
          height:150px;
          border:1px solid black;
          background:url("photo.jpg") no-repeat;
          background-size:80% 50%;
      }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

                   将图片的宽设置为相对于div的宽的80%,长相对于div的长的50%,效果如下:

                                             

                               cover,将图片等比例缩放,图片刚好全部占满本元素为止,这可能会到导致宽或高其中之一会溢出而被舍弃

<!DOCTYPE html>
<html>
<head>
    <meta  charset="utf-8">
    <title>background-size属性</title>
    <style type="text/css">
      div{
          width:300px;
          height:150px;
          border:1px solid black;
          background:url("photo.jpg") no-repeat;
          background-size:cover;
      }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

                      图片将铺满整个元素,不过可能会因为比例不对而到时宽或高其中之一溢出而被舍弃,效果图如下:

                                              

                     对比原图,该图的高溢出一部分被舍弃。

                               contain,将图片等比例缩放, 图片的宽或长刚好100%铺满本元素的长或宽即可,这可能会导致宽或长不足100%

<!DOCTYPE html>
<html>
<head>
    <meta  charset="utf-8">
    <title>background-size属性</title>
    <style type="text/css">
      div{
          width:300px;
          height:150px;
          border:1px solid black;
          background:url("photo.jpg") no-repeat;
          background-size:contain;
      }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

             图片的宽或高铺满div的宽或高,效果如下图:

                          

               当图片的高铺满div的高时,图片的宽还没铺满div的宽。

posted @ 2016-07-23 17:48  yezi-dream  阅读(1083)  评论(1编辑  收藏  举报