expression是在IE5版本之后支持使用的,用来把CSS属性和Javascript脚本关联起来,【这里的CSS属性可以是元素固有的属性,也可以是自定义属性。】是动态设置CSS属性的强大方法,但也存在着一定的危险性

CSS属性后面可以是一段Javascript表达式,CSS属性的值等于Javascript表达式计算的结果。

在表达式中可以直接引用元素自身的属性和方法,也可以使用其他浏览器对象。这个表达式就好像是在这个元素的一个成员函数中一样。

1,给元素固有属性赋值

 #div{
position:absolute;
left:expression(document.body.offsetWidth-200+"px");
top:expression(document.body.offsetHeight-250+"px");
}

给一个div设置其左边距和上边距。document.body.offsetWidth是当前网页可见区域宽度。

2、给元素自定义属性赋值

用CSS自定义属性Expression对表格行间隔背景批量定义

 <html>
<head>
<title></title>
<style type="text/css">
tr{ bg:expression('#F8F8F8,#EFEFEF'.split(',')[rowIndex%2]); }
</style>
</head>
<body>
<table width="100%" border="0">
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
</table>
</body>
</html>

上面的代码可以实现表格行背景色(#F8F8F8,#EFEFEF)交替出现,不需要每行单独定义。

bg是自己任意定义的属性。在自定义属性与expression之间可别忘了还有一个引号,因为实质还是CSS,所以放在style标签内,而非script内。

注意:

不是非常需要,一般不建议使用expression,因为expression对浏览器资源要求比较高

CSS Expression的问题就在于它的计算频率要比想象的多出很多。不仅仅是在页面显示和缩放时,就是在页面滚动、乃至移动鼠标时都会要重新计算一次。给CSS Expression增加一个计数器可以跟踪表达式的计算频率。在页面中随便移动鼠标都可以轻松达到10000次以上的计算量。

性能优化:

一个减少CSS Expression计算次数的方法就是使用一次性的表达式,它在第一次运行时将结果赋给指定的样式属性,并用这个属性来代替CSS Expression。

CSS Expression还是有很多问题,所以尽量不要使用。

最新文章

  1. jvm、jre、jdk
  2. Maven项目加载JAR包
  3. 实际遭遇并解决:类型“ASP.global_asax”同时存在的问题
  4. [BZOJ 3622]已经没有什么好害怕的了
  5. Groovy轻松入门——搭建Groovy开发环境
  6. InputStream的封装类
  7. ecshop广告调用方法
  8. Sqlite数据库添加数据以及查询数据方法
  9. 最好用的MongoDB GUI - LivingMongo
  10. Emit 自动生成IL代码,注入代码
  11. [Swift]LeetCode146. LRU缓存机制 | LRU Cache
  12. Linux中Root密码破解
  13. sql语句中start with用法,用于表达一个复杂的目录树存储在一张表中
  14. Xshell设置密钥登录CentOS6.5_64位(文字命令版)
  15. visio连接线设置
  16. 从 ELK 到 EFK 的演进
  17. C# mongodb中内嵌文档数组条件查询
  18. asp.net单元测试及查看代码覆盖率详细示例
  19. [C] scanf - 格式输入函数
  20. GIT非常见命令使用笔记

热门文章

  1. windows cmd color setup
  2. spring.xml命名空间
  3. 将helps.php或者functions.php直接进行了加载
  4. PHP正则表达式的使用
  5. ACM题目————The partial sum problem
  6. Oracle 11gR2中启动Scott用户的方法
  7. jdbc连接集合
  8. TreeView 读取 xml 显示节点
  9. Ramsey theorem in Combinarotics
  10. Communication System(dp)