第5章 背 景 属 性
网页除了向大家展示信息,还应具有可观赏的美观性。漂亮美观的网页离不开背景的修饰以及丰富的色彩。也就是说,一个漂亮的网站不仅需要页面布局合理,还应该注意色彩视觉和颜色的搭配。这样才能够使网页更加精美,具有表现力,使网站更具有吸引力。
功能强大的CSS可以为页面增加更多的色彩以及背景选择,还可以统一页面元素的色彩配置,使网站具有相近的风格。在本章中就为大家介绍这些背景属性。
5.1
背景颜色不显示
5.1.1 问题描述
我在使用div+CSS设计网页时,遇到过这样的问题。假设代码如下所示:
在div1中包含了div2和div3,如果div1不设定height属性,它的背景颜色就显示不出来,这是为什么?而且如果div2与div3不设置靠左或靠右,直接写在里面,背景就会显示出来,求原因,谢谢!
5.1.2 解决办法
那是因为前面的样式没有清除的原因,你只要加一行代码就可以了。在使用float属性的时候,为了不影响下面的样式,记得要使用clear属性的both属性值清除。代码如下所示:
5.1.3 知识扩展——background-color属性
background-color属性用于设置指定对象的背景色。其语法格式如下所示:
background-color : transparent | color
该属性默认值为transparent(透明),和color属性一样,可以接受任何有效的颜色值。如下段代码所示:
p { background-color: silver }
div { background-color: rgb(223,71,177) }
.td1{ background-color: #98AB6F }
.td2{ background-color: transparent; }
在HTML中应用以上样式规则,并在浏览器中查看运行效果,如图5-1所示。
图5-1 不同对象应用背景属性
如果在body标签中定义了背景色,则该背景色将应用于整个页面中,如下面代码所示:
body{background-color: #002779 }
使用以上代码,将背景色#002779应用于body标签中,效果如图5-2所示。
图5-2 登录页面
5.1.4 知识扩展——layer-background-color属性
layer-background-color属性用于设置对象整个区域的背景颜色,其语法格式如下所示:
layer-background-color : transparent | color
该属性默认值为transparent(透明),取值方式和background-color属性一样。layer-background- color属性是NS4+的专有属性。例如下段代码所示:
div { layer-background-color: transparent; }
5.2
如何设置背景图片
5.2.1 问题描述
做网站时必须有图片,尤其是背景图片。可是关于图片路径问题一直是个头疼的问题,例如下段代码。使用url指定了一张背景图片的路径,表示从本地获得该背景图片,可是总显示不出来该背景图片,这是为什么呢?代码如下所示:
background-image:url("file:///F:\LVZUOYIN.NET\WebSite1\image\夏天.jpg");
5.2.2 解决办法
如果该背景图片是从本地获取的,那么绝对路径的书写方法如下所示:
background-image:url("F:\LVZUOYIN.NET\WebSite1\image\夏天.jpg")
相对路径的属性方法如下所示:
background-image:url("../../image/夏天.jpg");
如果该图片是从服务器端获取的,书写方式如下所示:
background-image: url("http://yourPath/images/bg.gif");
5.2.3 知识扩展——background-image属性
background-image属性用于设置对象的背景图片,其语法格式如下所示:
background-image : none | url ( url )
url表示指向背景图片的相对或绝对路径。如果同时设置了背景颜色和背景图片时,背景图片将覆盖到背景颜色之上。
例如在下面的例子中,div中定义添加背景图片,这样在该div中将会应用到该图片,部分代码如下所示:
.div1{ background-image: url(http_imgload18.jpg); width:600px; height:400px }
月落乌啼霜满天,
江枫渔火对愁眠。
姑苏城外寒山寺,
夜半钟声到客船。
在以上代码中,需要说明图片路径问题。在URL中指定要引用的图片,该路径既可以是绝对路径,也可以是相对路径,还可以使用链接方式直接引用网络上的图片。在浏览器中打开该页面,运行结果如图5-3所示。
图5-3 背景图片
背景图片的显示与对象的尺寸有关。例如,在上述代码中,设置div的长度为400px,宽度为600px。如果该图片的尺寸小于对象尺寸,则在显示时以空白或重复图片来填充。如果该图片尺寸大于对象尺寸,则多余的部分在显示时将被截掉。
任何页面元素都可以应用背景图片,例如,下面例子中,将在段落标记中使用背景图片,代码如下所示:
月落乌啼霜满天,
江枫渔火对愁眠。
姑苏城外寒山寺,
夜半钟声到客船。
以上代码中,在p标签中引用名为http_imgload25的图片,然后再浏览器中打开该页面,运行结果如图5-4所示。
图5-4 在段落中使用背景图片
例如,下面例子的CSS样式表中定义关于某博客的背景样式,具体代码如下所示:
#contentHeader {
margin: 15px auto;
width: 710px;
height: 182px;
background-image: url(header.gif) ; /*设置背景图片*/
background-repeat:no-repeat; /*背景图片不平铺*/
border: 1px solid #44434c; /*边框样式*/
position: relative;
}
在CSS中,规定了该博客背景div的宽度、高度、背景图片以及边框样式,在HTML中应用该样式,代码如下所示:
在浏览器中打开该页面,运行结果如图5-5所示。
图5-5 博客样式
5.2.4 知识扩展——layer-background-image属性
layer-background-image属性用于设置对象整个区域内的背景图片,其语法格式如下所示:
layer-background-image : none | url (url)
layer-background-image属性默认值为none,url表示要引用的背景图片的相对路径或绝对路径,该属性为NS4+专有属性。代码如下所示:
code {
position: absolute; top: 100px;
left: 300px;
width: 200px;
border: thin solid black;
background-image: url("comet.jpg");
layer-background-image: url("bb_comet.jpg"); }
……