有一个你们可能从未听说的有趣的css功能是火狐浏览器独创的-moz-element属性,使用它,你可以用网页上任意的内容作为背景,跟背景图的效果相似。
html和css代码
假设你的网页里有这样一块html内容,它有css样式,里面有文本信息,还有一些inline的css属性:
代码如下:
<div id=mozelementback
style=border:1px solid #999;
width: 200px; height: 100px; color: #fff;
background: -moz-linear-gradient(top, #063053, #395873, #5c7c99);>
我要成为背景
</div>
上面的代码既有外部样式,又有inline样式,这不影响-moz-element的使用,现在我们就可以将这块html作为其它元素的背景(background):
代码如下:
#myspecialelement {
/* “mozelementback” 是当前页里某个元素的id */
background: -moz-element(#mozelementback) repeat;
}
非常简单,只需要将-moz-element设置成元素的id,这样,这个元素所包含的区域就会成为背景,你还可以使用background-repeat等参数修饰它,跟普通的背景图的用法一样。但以页面元素做背景的一大亮点是,当你更新背景元素的html内容和样式时,背景同步发生变化,也就是说,你可以把它当成一个“活”背景!
一个神奇的css属性,不是吗?这种以一块html内容做为背景的用途可以非常广泛,感谢mozilla。你能想出在现实项目中这个功能可以用在什么地方吗?我先想到的一点就是用-moz-element将一段文字做背景,而这些文字是用javascript动态写上去的。一个有趣的css属性!