zoukankan      html  css  js  c++  java
  • 用CSS设置多个背景、背景渐变、指定背景大小

    CSS3规范中对背景这一部分,新加入了一些令人兴奋的功能,如可以设置多个背景图片、可以指定背景大小、设置背景渐变等功能。CSS3规范中定义的背景属性有:

    属性名可能的值默认值
    background 是一种简写方式:bg-image || bg-position || / bg-size || repeat-style || attachment || bg-origin,最后一个背景层可以设置background-color  
    background-attachment scroll | fixed | local scroll
    background-clip border-box | padding-box
    表示背景渲染的方法:padding box表示背景在padding box内渲染;border-box表示背景在border-box内渲染
    border-box
    background-color <color> transparent
    background-image image | none
    可以设置多个背景图,以逗号(,)分隔开。none也代表一个背景层
    none
    background-origin border-box | padding-box | content-box
    背景相对的位置,相对于上面3个值中的一个。
    padding-box
    background-position % length top right bottom left center
    这些属性的设置方法跟以前类似
    0% 0%
    background-repeat repeat-x | repeat-y | [repeat | space | round | no-repeat]{1,2}
    平铺方式
    repeat
    background-size [length | % | auto ]{1,2} | cover | contain
    设置背景的大小。contain表示按比例缩放占据最大高度或者宽度的背景;cover表示铺满整个背景。
    auto

     下面我们以5个例子来说明一些新的CSS3的功能。其中,CSS3允许设置多个背景图片,每个背景图片占一层,层的上下按照在CSS中写的顺序来定,最先写的背景在最上层。

    CSS 代码
    background:url(http://dotnet.aspx.cc/Book/Images/CSS1_s.jpg) 0 0 no-repeat,
                         url(http://dotnet.aspx.cc/Book/Images/CSS2_s.jpg) 200px 0 no-repeat,
                         url("http://dotnet.aspx.cc/Book/Images/ASPNET20Book1_s.jpg") 400px 201px no-repeat;

      是背景的简写方式,除了默认值之外,等效于下面的写法:

    CSS 代码
    background-image:url("http://dotnet.aspx.cc/Book/Images/CSS1_s.jpg"),url("http://dotnet.aspx.cc/Book/Images/CSS2_s.jpg"),url("http://dotnet.aspx.cc/Book/Images/ASPNET20Book1_s.jpg");
    background-repeat: no-repeat, no-repeat, no-repeat;  
    background-position: 0 0, 200px 0, 400px 201px;  

      另外一个需要注意的是:背景渐渐也是一个背景层,所以在例子4中

    CSS 代码
    background-image:-moz-linear-gradient(left, rgba(0, 255, 0, 1),  rgba(255, 0, 0, 0)),
                                        url("http://dotnet.aspx.cc/Book/Images/CSS2_s.jpg");

     的写法顺序不能颠倒,如果写成

    CSS 代码
    background-image:url("http://dotnet.aspx.cc/Book/Images/CSS2_s.jpg"),
                                    -moz-linear-gradient(left, rgba(0, 255, 0, 1),  rgba(255, 0, 0, 0));

    就看不出渐变效果了。

    例子的全部源代码如下:

    XML/XHTML 代码
    < style type ="text/css" > 
    div{font-size:24px;font-weight:bo;d;color:#f00;text-align:right;margin:10px 0;}
    #div1
    {
    height:400px;600px;
    border:4px solid orange;
    background-image:url("http://dotnet.aspx.cc/Book/Images/CSS1_s.jpg"),url("http://dotnet.aspx.cc/Book/Images/CSS2_s.jpg"),url("http://dotnet.aspx.cc/Book/Images/ASPNET20Book1_s.jpg");
    background-repeat: no-repeat, no-repeat, no-repeat;  
    background-position: 0 0, 200px 0, 400px 201px;  
    }

    #div2
    {
    height:400px;600px;
    border:4px solid orange;
    background:url(http://dotnet.aspx.cc/Book/Images/CSS1_s.jpg) 0 0 no-repeat,
                         url(http://dotnet.aspx.cc/Book/Images/CSS2_s.jpg) 200px 0 no-repeat,
                         url("http://dotnet.aspx.cc/Book/Images/ASPNET20Book1_s.jpg") 400px 201px no-repeat;

    }

    #div3
    {
    height:100px;600px;
    border:4px solid orange;
    background-image: -moz-linear-gradient(left, red, orange, yellow, green, blue, indigo, violet);
    }

    #div4
    {
    height:100px;600px;
    border:4px solid orange;
    background-image:-moz-linear-gradient(left, rgba(0, 255, 0, 1),  rgba(255, 0, 0, 0)),
                                        url("http://dotnet.aspx.cc/Book/Images/CSS2_s.jpg");
    }

    #div5
    {
    height:400px;600px;
    border:4px solid orange;
    background-image:url("http://dotnet.aspx.cc/Book/Images/CSS2_s.jpg");
    -moz-background-size:cover;
    background-repeat:no-repeat;
    }

    </ style > 
    < div id ="div1" > div1 </ div > 
    < div id ="div2" > div2 </ div > 
    < div id ="div3" > div3 </ div > 
    < div id ="div4" > div4 </ div > 
    < div id ="div5" > div5 </ div >


    以上例子的最终显示效果如下图所示(如果图片不能显示,请直接点击链接查看)。查看本例子的效果需要Firefox 3.6,Chrime,Safari4的浏览器。其中 Firefox 3.6可以看到全部的效果。 
    http://dotnet.aspx.cc/Images/mengxianhui_css3_3.jpg 

  • 相关阅读:
    常用Linux命令
    SQL必知必会-笔记
    【ubuntu】install openbox+tint2+bmenu on ubuntu12.04.4
    【ruby】安装Ruby
    【ruby】快速安装gems的方法
    【sinatra】设置默认的端口
    【sinatra】修改默认ip绑定
    【sinatra】结合Padrino framework
    【sinatra】安装测试
    【rails3教材】博客构建过程2
  • 原文地址:https://www.cnblogs.com/losesea/p/2890611.html
Copyright © 2011-2022 走看看