• [转载]css3的一个控制背景的属性,background-size可以缩放大小啦


    background-size需要两个值,它的类型可以是像素(px)、百分比(%)或是auto,还可以是cover和contain。第一个值为背景图的width,另外一个值用于指定背景图上的height,如果只设定1个值,则第2个默认为auto,但当值为cover和contain时除外。

    cover:保持图像的宽高比例,将图片缩放到正好完全覆盖定义的背景区域,其中有一边和背景相同。

    html:

    <div class="div" ><h1>雨打浮萍</h1><p>专注于web前端开发</p></div>

    css:

    .div{
    	160px;
    	height:120px;
    	border:1px solid #ccc;
    	padding:10px;
    	background-image:url(bg.jpg);
    	background-size:cover;
    }

    效果如下:

    contain:保持图像的宽高比例,将图片缩放到宽或者高正好适应定义背景的区域,但背景仍在定义的区域之内,被包含。

    css:

    .div{
    	160px;
    	height:120px;
    	border:1px solid #ccc;
    	padding:10px;
    	background:url(bg.jpg) no-repeat;
    	background-size:contain;
    	font-family:Microsoft Yahei;
    }

    效果如下:

    length

    .div{
    	background-size:150px 80px;
    }

    显示效果:

    这里为背景图片设置宽高,图片会直接被拉伸或缩放,不保持原来的比例。如果只设置一个数值,另外一个值默认为auto,它将按图片原比例来伸缩。

    percentage

    .div{
    	background-size:40% 60%;
    }

    这里需要特别注意一下,图片大小不是按背景图片大小的百分数来计算的,而是装载背景图的元素的百分比来计算。

    浏览器的兼容性

    支持浏览器:IE(9)、firefox、Chrome、Opera、Safari。

    /*Mozilla*/
    -moz-background-size:auto||<length>||<percentage>||cover||contain;
    /*Webkit*/
    -webkit-background-size:auto||<length>||<percentage>||cover||contain;
    /*Presto*/
    -o-background-size:auto||<length>||<percentage>||cover||contain;
    /*W3c*/
    background-size:auto||<length>||<percentage>||cover||contain;

    注意:虽然我上面写到了各浏览器需要添加自己独特的方式,但并不代表这个样式一定要添加,在我写的事例中并没有为各浏览写自己的样式,仍然执行很好。

      转自http://www.igooda.cn/jsdt/20130827355.html

  • 相关阅读:
    【3006】统计数字
    【5001】n皇后问题
    【7001】n阶法雷序列
    【9402】倒序数
    【9705】&&【a801】细胞
    【9802】闭合曲线面积
    【a803】营救
    【9112】求2的n次方的精确值
    V8引擎实现标准ECMA-262(三)
    仔细看看Javascript中的逻辑与(&&)和逻辑或(||)
  • 原文地址:https://www.cnblogs.com/AaronBear/p/5673000.html
Copyright © 2020-2023  润新知