CSS 定义了 5 个背景相关的属性
background-color
background-image
background-repeat
background-attachment
background-position
CSS background-color 属性定义了 HTML 元素的背景颜色
页面的背景颜色通常定义在 body 的选择器中
body {background-color:#b0c4de;}
CSS 中,颜色值通常以以下方式定义
十六进制 - 如:"#ff0000"
RGB - 如:"rgb(255,0,0)"
颜色名称 - 如:"red"
下面的范例,给 h1, p, 和 div 元素设置了不同的背景颜色
h1 {background-color:#6495ed;}
p {background-color:#e0ffff;}
div {background-color:#b0c4de;}
CSS background-image 属性描述了元素的背景图像
默认情况下,背景图像会进行平铺重复显示,以覆盖整个元素实体
比如下面的范例给页面设置了背景图片
body {background-image:url('/static/i/paper.gif');}
下面的范例则是一个糟糕的文字和背景图像组合,因为文本可读性差
body {background-image:url('/static/i/bgdesert.jpg');}
CSS background-repeat 属性用于设置背景图片的平铺方式
默认情况下 background-image 属性会在页面的水平和垂直方向平铺
但一些图像如果在水平方向与垂直方向平铺,这样看起来很不协调
body
{
background-image:url('/static/i/gradient2.png');
}
上面的图片只在水平方向平铺 (repeat-x), 页面背景会更好些
body
{
background-image:url('gradient2.png');
background-repeat:repeat-x;
}
CSS background-repeat 属性用于设置背景图片的平铺方式
背景图片的设置原则是:让背景图像不影响文本的排版
如果不想让图像平铺,可以使用 background-repeat:no-repeat 属性
body
{
background-image:url('/stataic/i/css/img_tree.png');
background-repeat:no-repeat;
}
CSS background-position 属性可以改变图像在背景中的位置
上面的范例中,背景图像与文本显示在同一个位置,为了让页面排版更加合理,不影响文本的阅读,我们可以改变图像的位置
body
{
background-image:url('/static/i/css/img_tree.png');
background-repeat:no-repeat;
background-position:right top;
}
在上面的范例中,我们为了精确控制背景,设置了很多的属性
为了简化这些属性的代码,我们可以将这些属性合并在同一个属性中
我们可以使用 CSS 的 "background" 属性来简写这些属性
body {background:#ffffff url('/static/i/css/img_tree.png') no-repeat right top;}
当使用简写属性时,属性值的顺序为:
background-color
background-image
background-repeat
background-attachment
background-position
以上属性无需全部使用,我们可以按照页面的实际需要使用
下表列出了所有的 CSS 2 背景属性
属性 | 描述 |
---|---|
background | 简写属性,作用是将背景属性设置在一个声明中 |
background-attachment | 背景图像是否固定或者随着页面的其余部分滚动 |
background-color | 设置元素的背景颜色 |
background-image | 把图像设置为背景 |
background-position | 设置背景图像的起始位置 |
background-repeat | 设置背景图像是否及如何重复 |