CSS中的行为——expression

css|express

CSS中的行为——expression

最近对CSS中的行为比较感兴趣,虽然是不符合标准的也只有ie才能识别,但是他确实给css的功能扩展了不少。下面是摘自互联网上的文字和例子,因为都被转烂了,没法注明出处。

IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javascript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性。就是说CSS属性后面可以是一段Javascript表达式,CSS属性的值等于Javascript表达式计算的结果。 在表达式中可以直接引用元素自身的属性和方法,也可以使用其他浏览器对象。这个表达式就好像是在这个元素的一个成员函数中一样。

给元素固有属性赋值

下面是定义container容器的宽度,如果<725就为自己的宽度,否则就等于725,相当于max-width:725px;。

<style type="text/css" media="screen">
#container { width: expression((documentElement.clientWidth < 725) ? "725px" : "auto" ); }
</style>

给元素自定义属性赋值

例如,消除页面上的链接虚线框。 通常的做法是:

<a href="link1.htm" >link1</a>
<a href="link2.htm" >link2</a>
<a href="link3.htm" >link3</a>

粗看或许还体现不出采用expression的优势,但如果你的页面上有几十甚至上百个链接,这时的你难道还会机械式地Ctrl+C,Ctrl+V么,何况两者一比较,哪个产生的冗余代码更多呢?

采用expression的做法如下:

<style type="text/css">
a {star : expression(onfocus=this.blur);}
</style>
<a href="link1.htm">link1</a>
<a href="link2.htm">link2</a>
<a href="link3.htm">link3</a>

说明:里面的star就是自己任意定义的属性,你可以随自己喜好另外定义,接着包含在expression()里的语句就是JS脚本,在自定义属性与expression之间可别忘了还有一个引号,因为实质还是CSS,所以放在style标签内,而非script内。OK,这样就很容易地用一句话实现了页面中的链接虚线框的消除。不过你先别得意,如果触发的特效是CSS的属性变化,那么出来的结果会跟你的本意有差别。例如你想随鼠标的移进移出而改变页面中的文本框颜色更改,你可能想当然的会认为应该写为

<style type="text/css">
input {star : expression(onmouseover=this.style.backgroundColor="#F5F5F5";
onmouseout=this.style.backgroundColor="#FFFFFF")}
</style>
<input type="text">
<input type="text">
<input type="text">

可结果却是出现脚本出错,正确的写法应该把CSS样式的定义写进函数内,如下所示:

<style type="text/css">
input {star : expression(onmouseover=function()
{this.style.backgroundColor="#FF0000"},
onmouseout=function(){this.style.backgroundColor="#FFFFFF"}) }
</style>
<input type="text">
<input type="text">
<input type="text">

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

时间: 2024-09-22 01:55:05

CSS中的行为——expression的相关文章

CSS中的行为—expression

css|express CSS中的行为--expression最近对CSS中的行为比较感兴趣,虽然是不符合标准的也只有ie才能识别,但是他确实给css的功能扩展了不少.下面是摘自互联网上的文字和例子,因为都被转烂了,没法注明出处. IE5 及其以后版本支持在CSS中使用expression,用来把CSS属性和Javascript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性.就是说CSS属性后面可以是一段Javascript表达式,CSS属性的值等于Javascript

CSS中的行为:expression

 CSS中的行为--expression 最近对CSS中的行为比较感兴趣,虽然是不符合标准的也只有ie才能识别,但是他确实给css的功能扩展了不少.下面是摘自互联网上的文字和例子,因为都被转烂了,没法注明出处. IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javascript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性.就是说CSS属性后面可以是一段Javascript表达式,CSS属性的值等于Javascript表达式计算的结果. 在

CSS中expression使用简介

css|express 定义 IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javascript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性.就是说CSS属性后面可以是一段Javascript表达式,CSS属性的值等于Javascript表达式计算的结果. 在表达式中可以直接引用元素自身的属性和方法,也可以使用其他浏览器对象.这个表达式就好像是在这个元素的一个成员函数中一样. 给元素固有属性赋值 例如,你可以依照浏览器的大小来安置一个元素

jQuery操作表格背景色迭代和鼠标移动事件(CSS中使用expression)

表格的操作: 1:通过树形迭代,获取要操作的表格节点,jQuery实现动态的table背景色迭代,和鼠标移动时间,js实现(使用于一层表格,js方法参数为表格id,颜色自定义): 表格css代码: #userinfoshow tr th{background: #B15BFF; text-align:center;vertical-align:middle;}//表头背景色和上下左右居中 #userinfoshow tr td{text-align:center;vertical-align:m

css中expression的应用

在css中,<!--StartFragment-->expression可以自定义属性,利用这个属性,可以方便控制页面元素的显示,下面一个例子就是让链接和平常文本一样显示,并在点击时不触发href属性的跳转. <style> .linkdisable {color:black;TEXT-DECORATION:none;zhsp1029:expression(this.onclick=function (){return false})} </style> <bod

CSS中expression怎么用? CSS expression详解

什么是CSS expression? IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javascript脚本关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性.就是说CSS属性后面可以是一段Javascript表达式,CSS属性的值等于Javascript表达式计算的结果. 在表达式中可以直接引用元素自身的属性和方法,也可以使用其他浏览器对象.这个表达式就好像是在这个元素的一个成员函数中一样. 是不是感觉上面的文字有点晦涩?没有关系,你只需要知道:我

总结CSS中火狐浏览器与IE浏览器的兼容代码

总结CSS中火狐浏览器与IE浏览器的兼容代码,兼容你兼容主要是语法规范问题,你写CSS写规范了,就都兼容了,其他的就是一些浏览器的BUG了,发一些技巧给你看看,或许有用. CSS技巧 1.div的垂直居中问题 vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了.缺点是要控制内容不要换行 2.margin加倍的问题 设置为float的div在ie下设置的margin会加倍.这是一个ie6都存在的bug.解决

如何在CSS中写脚本实现交互效果?

我们浏览网页的时候,经常会遇到一些交互的效果.例如容器在鼠标移上去的时候,会发生一些变化.这些效果,可以用多种方法来实现.现在我们要解决的是如何在CSS中写脚本实现交互效果. CSS代码如下:  代码如下 复制代码 event:expression( onmouseover = function()     {     this.style.backgroundColor='#ccc'     this.style.border='1px solid #000'     }, onmouseou

Css利用js的expression实现的效果_经验交流

IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javas cript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性.就是说CSS属性后面可以是一段Javas cript表达式,CSS属性的值等于Javas cript表达式计算的结果. 在表达式中可以直接引用元素自身的属性和方法,也可以使用其他浏览器对象.这个表达式就好像是在这个元素的一个成员函数中一样.  给元素固有属性赋值 例如,你可以依照浏览器的大小来安置一个元素的位置. #myDiv