CSS学习笔记11 CSS背景
background-color:背景色
前面我们经常用background-color这个属性来设置元素的背景色,例如下面这条css可将段落的背景色设置为灰色
p {background-color: gray;}
如果想要元素的背景色向外延伸,则只需增加内边距即可
background-color可以为所有元素设置背景色,这包括 body 一直到 em 和 a 等行内元素。
注意:background-color 不能继承,其默认值是 transparent。transparent 有“透明”之意。也就是说,如果一个元素没有指定背景色,那么背景就是透明的,这样其祖先元素的背景才能可见。
background-image:背景图像
除了可以为元素设置背景色之外,还可以用background-image属性为元素设置背景图像,其默认值是 none,表示元素背景上没有放置任何图像。
如果需要设置一个背景图像,必须为这个属性设置一个 URL 值:
body {background-image: url(img/a.jpg);}
通常情况下背景应用于 body 元素。
注意:同background-color一样,background-image 也不能继承,事实上,所有背景属性都不能继承。背景图片会盖住背景颜色。也就是说背景图片的优先级要高于背景色。
background-repeat:背景重复
上面中的例子中,我们看到图片铺满了整个屏幕,如果需要设置是否需要平铺以及平铺的方向,可以使用background-repeat属性
属性值 |
效果 |
repeat |
水平垂直方向上都平铺 |
repeat-x |
水平方向上平铺 |
repeat-y |
垂直方向上平铺 |
no-repeat |
不平铺 |
background-position:背景定位
默认情况下,背景图片的位置的在元素的左上角,这时可以利用 background-position 属性改变图像在背景中的位置。
background-position可能的值
background-attachment:背景关联
scroll: 默认值,背景图像会随着页面其余部分的滚动而移动。
fixed:固定显示,相对于body固定。一般只用于body的背景设置。
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>CSS背景</title> 6 <style type="text/css"> 7 body { 8 background-image: url(img/a.jpg); 9 background-repeat: no-repeat; 10 background-attachment: fixed; 11 } 12 </style> 13 </head> 14 <body> 15 <p>图像不会随页面的其余部分滚动。</p> 16 <p>图像不会随页面的其余部分滚动。</p> 17 ... 18 <p>图像不会随页面的其余部分滚动。</p> 19 </body> 20 </html>
属性合写
可以将上面讲到的属性用background属性进行合写,通常建议使用这个属性,而不是分别使用单个属性,因为这个属性在较老的浏览器中能够得到更好的支持,而且需要键入的字母也更少。
background合写的顺序: 背景颜色、背景图地址、平铺设置、背景图滚动、背景图位置。如:
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>CSS属性合写</title> 6 <style type="text/css"> 7 body { 8 background: yellow url(img/a.jpg) no-repeat scroll center top; 9 } 10 </style> 11 </head> 12 <body> 13 <p>段落1</p> 14 <p>段落2</p> 15 ... 16 <p>段落20</p> 17 </body> 18 </html>