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

首頁 > 開發 > CSS > 正文

css expression使用概述及其優缺點介紹

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

概述
  css expression(css表達式)又稱Dynamic properties(動態屬性)是早期微軟DHTML的產物,以其可以在Css中定義表達式(公式)來達到建立元素間屬性之間的聯系等作用,從IE5開始得到支持,后因標準、性能、安全性等問題,微軟從IE8 beta2標準模式開始,取消對css expression的支持。
使用
  微軟提供了4個css expression方法:getExpression、recalc、removeExpression、setExpression。有興趣可以參考msdn。
  一般最常用的是直接在css中使用expression,例如:


.toTop{
top:expression(eval(document.documentElement.scrollTop + document.documentElement.clientHeight – 60)));
}

這是一個返回頂部按鈕css代碼的截取,用css來將元素定位到屏幕底部的位置。
優點
  css exprssion技術達到了可以使用表達式或公式來定義css屬性的目的,msdn上給出了它的幾個優點:減少頁面上的代碼,使設計師無需學習javascript就能實現一些DHTML的效果。個人認為,減少頁面上的代碼實際上只是減少了相關javascript的代碼,而css expression中的代碼本身與js是及其類似,設計師無需學習js就能實現DHTML效果這個優點也很牽強,或曰雞肋。
缺陷
.不符合web標準
css表達式這種在表現(css)中插入行為(js)代碼,有悖于web標準的結構、表現、行為相分離的理念。
.效率低下
一個css表達式會反復執行,甚至執行成百上千次。這會大大消耗計算機的硬件資源,極端情況下會導致瀏覽器的崩潰。
.帶來安全隱患
css表達式暴露了一個腳本執行的上下文,可能帶來腳本注入的隱患。
  基于以上原因,微軟最終從IE8 beta2(標準模式下)開始放棄對css表達式的支持。
實際應用
  早期很多開發人員利用css expression實現了許多效果,比如將元素相對鼠標指針進行定位,根據一個定時器來移動元素等等。當然這些效果能夠使用js來實現。
  雖然css表達式問題很多,但是我們依然能夠在網上看到它們的影子,甚至在一些成熟的商業網站上。最常見的一個應用就是懸浮在頁面上的某個模塊(比如導航、返回頂部)。
  我們來看一個常見的返回頂部按鈕的代碼實現:
  html:


<!doctype html>
<html>
<head>…</head>
<body>
<div id=”top”>…</div>

<a href=”#top” id=”toTopBtn”>返回的頂部</a>
</body>
</html>

 css:


#toTopBtn{
position:fixed;
bottom:10px;
right:10px;
_position:absolute;
_top:expression(eval(document.documentElement.scrollTop + document.documentElement.clientHeight – 60));

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 锡林浩特市| 尼勒克县| 广西| 宿州市| 山东省| 永寿县| 措美县| 合作市| 道真| 赣州市| 蓝田县| 定陶县| 青铜峡市| 乌拉特前旗| 大宁县| 和平县| 平远县| 增城市| 天柱县| 信丰县| 徐水县| 资中县| 射阳县| 枣强县| 六枝特区| 辽宁省| 白山市| 南昌市| 元朗区| 灌云县| 罗甸县| 台东县| 望奎县| 安龙县| 桓仁| 江北区| 昆山市| 海原县| 农安县| 休宁县| 浑源县|