任意一块网页内容实现“活”的背景(目前火狐浏览器专有)
程序员文章站
2022-05-07 19:22:00
火狐浏览器和谷歌浏览器实现了一些有趣的、自己独有的CSS属性,这些属性虽然都很有趣,但要融入标准的HTML5还需要不少时间... 14-05-07...
有一个你们可能从未听说的有趣的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属性!