博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CSS3:用CSS设置多个背景、背景渐变、指定背景大小
阅读量:7247 次
发布时间:2019-06-29

本文共 3298 字,大约阅读时间需要 10 分钟。

 http://blog.csdn.net/net_lover/article/details/5212026

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

 

属性名 可能的值 默认值
是一种简写方式:bg-image || bg-position || / bg-size || repeat-style || attachment || bg-origin,最后一个背景层可以设置background-color  
scroll | fixed | local scroll
border-box | padding-box
表示背景渲染的方法:padding box表示背景在padding box内渲染;border-box表示背景在border-box内渲染
border-box
<color> transparent
image | none
可以设置多个背景图,以逗号(,)分隔开。none也代表一个背景层
none
border-box | padding-box | content-box
背景相对的位置,相对于上面3个值中的一个。
padding-box
% length top right bottom left center
这些属性的设置方法跟以前类似
0% 0%
repeat-x | repeat-y | [repeat | space | round | no-repeat]{1,2}
平铺方式
repeat
[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;width: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;width: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;width:600px;
border:4px solid orange;
background-image: -moz-linear-gradient(left, red, orange, yellow, green, blue, indigo, violet);
}
#div4
{
height:100px;width: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;width: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 >

转载于:https://www.cnblogs.com/linhh-ocean/p/4262926.html

你可能感兴趣的文章
dos 磁盘操作系统
查看>>
数据结构顺序队列打卡
查看>>
Web service调用的安全性
查看>>
C语言测试:想成为嵌入式程序员应知道的0x10个基本问题【转】
查看>>
C#集合
查看>>
ssh 登陆redhat linux时中文显示乱码解决方法
查看>>
【Linux】 静态函数库设计
查看>>
ecshop_2.7.2_flow.php_sql注入漏洞利用工具
查看>>
Yii2手动安装第三方扩展
查看>>
个人作业数组续
查看>>
(转载博文)MFC 窗口句柄获取
查看>>
HAProxy详解(三)
查看>>
脚本初步
查看>>
svn 常见问题记录
查看>>
IIS 部署 python web框架 Flask
查看>>
MariaDB基础(2)—管理篇
查看>>
教你如何用 lib-flexible 实现移动端H5页面适配
查看>>
mysql5.6中的reset slave和reset master 参数的介绍和应用
查看>>
MySQL 命令行工具mycli
查看>>
如何使用LVM卷管理Linux系统中的磁盘
查看>>