`

用CSS设置多个背景、背景渐变、指定背景大小

阅读更多
属性名 可能的值 默认值
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 代码
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->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 代码
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->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 代码
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->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 代码
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->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 代码
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><style type="text/css">
div{font-size:24px;font-weight:bold;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>

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

http://dotnet.aspx.cc/Images/mengxianhui_css3_3.jpg  

孟宪会

分享到:
评论

相关推荐

    CSS3全屏背景图片缩小渐变代码.zip

    2. **背景大小调整**:`background-size`属性允许我们控制背景图片的大小。除了默认值外,还可以设置为百分比、像素值,或者如`cover`或`contain`这样的关键字。在这个例子中,可能使用了`background-size`配合`...

    6种CSS3平滑过渡的渐变背景颜色

    `color-stop1`, `color-stop2`等表示颜色停止点,可以指定多个颜色和它们的位置。 2. **圆形渐变(Radial Gradients)**: 径向渐变以圆心为中心,颜色由内向外扩散。基本语法如下: ```css background-image: ...

    css3属性选择器,背景缩写

    在CSS中,我们可以使用单一的`background`属性来设置多个背景属性,如颜色、图像、重复方式、定位和混合模式等。背景缩写可以简化代码,提高效率。例如: ```css background: color image position/repeat/size ...

    CSS3梦幻气泡背景动画特效.zip

    `animation-iteration-count`定义动画播放的次数,可以是数字或者无限(infinite),在这个背景特效中,气泡可能无限次地循环出现,带给用户连续的视觉体验。 此外,开发者还可以通过`animation-delay`来设定动画开始...

    CSS 背景全攻略

    背景颜色、图像、平铺、定位和附件的组合使用可以实现各种效果,如固定背景、图片拉伸、背景渐变等。在实际项目中,可以根据需求灵活组合这些属性,以达到预期的设计效果。同时,随着CSS3的发展,更多的背景特性和...

    15种CSS3渐变颜色色板配色代码

    `color-stop`用于定义颜色及其位置,多个颜色间用逗号分隔。 2. **径向渐变(Radial Gradient)**: 径向渐变使用`radial-gradient()`函数,其基本语法如下: ```css background-image: radial-gradient(shape size...

    CSS3样式前缀和线性渐变.docx

    径向渐变从一个中心点向四周扩散,可以指定形状(默认是椭圆,可以设置为正圆)、大小以及渐变中心的位置。例如: ```css /* 径向渐变 */ background: -webkit-radial-gradient(center, circle, yellow 10%, red 50...

    css3实现背景动态渐变效果

    例如,可以设置背景为棋盘格样式渐变,通过叠加多个渐变并设定不同大小的`background-size`。 总结来说,CSS3的背景渐变和动画功能极大地丰富了网页设计的表现力。理解并熟练掌握`linear-gradient()`和`@keyframes`...

    纯CSS3实现的颜色渐变背景效果的实现代码.zip

    - `color-stop` 是渐变中的颜色停止点,可以指定多个颜色及它们的位置。 示例: ```css .gradient-box { background-image: linear-gradient(to right, red, yellow, green); } ``` 这将创建一个从左到右,...

    CSS定义立体化渐变按钮

    线性渐变允许颜色沿着一个方向平滑过渡,可以指定多个颜色停止点,并可以改变颜色过渡的方向。 创建立体感的水晶按钮,我们通常会使用边框(border)、边框阴影(box-shadow)和内阴影(inset box-shadow)属性。...

    纯css3霓虹灯背景动画特效

    2. **文本阴影(Text Shadow)**:通过设置多个文本阴影,可以模拟霓虹灯管的立体感和发光效果。调整阴影的偏移量、模糊半径和颜色,可以创建出不同风格的霓虹灯效果。 3. **动画(Animations)**:CSS3的`@...

    CSS3实现多背景展示效果通过CSS3定位多张背景

    在CSS3中,实现多背景展示效果是一种创新且强大的功能,允许开发者在一个元素上设置多个背景图像,从而创建丰富的视觉效果。本实例将详细介绍如何利用CSS3定位多张背景,并结合`fixed`属性来实现固定定位,使得背景...

    css实现渐变效果

    `color-stop`定义了颜色的起始和结束点,可以设置多个颜色值。 例如,创建一个从左到右的蓝色到红色渐变背景: ```css div { background-image: linear-gradient(to right, blue, red); } ``` 2. 径向渐变: ...

    21.3 CSS 背景属性

    - 为了简化代码,CSS允许使用`background`简写属性一次性设置多个背景属性,顺序为:颜色 &gt; 图像 &gt; 重复 &gt; 定位 &gt; 附件 &gt; 大小。例如:`background: #fff url("image.jpg") no-repeat center fixed;`。 8. **背景...

    jQuery和css3简单实用的背景幻灯片插件

    标题中的“jQuery和css3简单实用的背景幻灯片插件”指的是一个结合了JavaScript库jQuery与CSS3技术的滑动展示效果插件,通常用于网站的首页或产品展示区域,以动态方式显示多张图片或内容。这种插件能够吸引用户注意...

    CSS3彩色光点背景动画特效.zip

    虽然这个案例主要依赖于动画,但CSS3的过渡(Transitions)也可能用于光点的某些属性变化,如颜色或大小的渐变,提供更平滑的用户体验。 **文本文件** 资源中包含的`说明.htm`和`说明.txt`可能是对如何使用这个...

    纯CSS3制作科技感十足的背景发光渐变网页Loading加载动画特效源码.zip

    这个属性可以组合多个CSS动画,指定动画的名称、持续时间、延迟、填充模式等。 ```css .loading-indicator { animation: loading-effect 2s infinite; } ``` 7. **响应式设计**: 考虑到不同设备的屏幕尺寸,...

    使用css的background:url设置背景图方法

    如果要同时设置多个背景属性,可以在一个`background`声明中用逗号分隔,如: ```css element { background: url(images/bg.png) no-repeat center fixed, linear-gradient(to right, #00f, #0f0); } ``` 在这个...

    CSS制作悬停渐变菜单

    3. **背景图像**:CSS的`background-image`属性可以设置背景图像,包括渐变。通过指定渐变的方向和颜色,我们可以创建出所需的悬停效果。 4. **过渡效果**:CSS的`transition`属性用于定义元素从一种样式过渡到另一...

Global site tag (gtag.js) - Google Analytics