国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

CSS中使用expression表達式

2024-07-11 08:34:02
字體:
來源:轉載
供稿:網友

逛到發現這個效果,個人感覺非常贊

下面是CSS樣式

input { 
border:1px solid #B3D6EF;  
background:#ffffff;  

input { 
    star : expression( 
    onmouseover=function(){this.style.backgroundColor="#D5E9F6"}, 
    onmouseout=function(){this.style.backgroundColor="#ffffff"}) 
    } 

好處在于 不用在頁面中寫一堆一堆的onMouseover函數了

lolo
有些問題需要注意下,這種寫法有可能在IE6下造成瀏覽器卡死,目前做的一個舊出現了卡死現象…

這里引用下怪飛的一篇CSS優化的文章

瀏覽器中 CSS Expression 特性的最大的問題:會反復執行,每秒鐘可能執行了成百上千次,有嚴重的性能問題。
如何對 CSS Expression 進行優化呢?
至少:如果我們將 CSS Expression 在匹配的元素中僅執行一次,性能將會提升很大。

old9 在 《CSS Expression Reloaded》一文中提供了一個解決方案:

在 CSS Expression 語句體里,將觸發該 Expression 的 CSS 屬性重置。

復制代碼代碼如下:
div {
zoom: expression(function(el){el.style.zoom = “1”; alert(el.tagName);}(this));
}

或者

復制代碼代碼如下:
div {
-singlex: expression(this.singlex ? 0 : (function(t) { alert(t.tagName); t.singlex = 0; } )(this));
}

說明一下~:
CSS Expression 執行在任意一個匹配的元素上。
在 CSS expression 內, “this”關鍵字指向當前匹配的 HTML 元素。
CSS 屬性選用一些不常用的屬性來觸發,觸發完重置回默認值。

關于Expression,雅虎團隊提到這些

避免使用CSS表達式(Expression) 
      CSS表達式是動態設置CSS屬性的強大(但危險)方法。Internet Explorer從第5個版本開始支持CSS表達式。下面的例子中,使用CSS表達式可以實現隔一個小時切換一次背景顏色:
      background-color: expression( (new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00" ); 
如上所示,expression中使用了JavaScript表達式。CSS屬性根據JavaScript表達式的計算結果來設置。expression方法在其它瀏覽器中不起作用,因此在跨瀏覽器的設計中單獨針對Internet Explorer設置時會比較有用。
      表達式的問題就在于它的計算頻率要比我們想象的多。不僅僅是在頁面顯示和縮放時,就是在頁面滾動、乃至移動鼠標時都會要重新計算一次。給CSS表達式增加一個計數器可以跟蹤表達式的計算頻率。在頁面中隨便移動鼠標都可以輕松達到10000次以上的計算量。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平南县| 略阳县| 临桂县| 方正县| 仁布县| 阿巴嘎旗| 厦门市| 竹山县| 瑞金市| 敖汉旗| 兴宁市| 清苑县| 新密市| 宝鸡市| 遂昌县| 墨竹工卡县| 德格县| 出国| 黄大仙区| 天台县| 阿拉善右旗| 长岛县| 洛川县| 蓬溪县| 福鼎市| 海城市| 绥阳县| 广饶县| 桐梓县| 连山| 巢湖市| 若尔盖县| 忻州市| 星子县| 梁平县| 石阡县| 石狮市| 民丰县| 三台县| 蒙城县| 达州市|