我在某处读到CSS表达式已被弃用,甚至不应该使用。我从没听说过它们,所以决定看看。我找到了一个代码示例,即使您滚动,该示例也将浮动元素保留在屏幕上的同一位置。
<html> <style> #fixed { position:absolute; left:10px; top:expression(body.scrollTop + 50 + "px"); background:white; border:1px solid red;} </style> <body> <p id="fixed">Here is some text, which is fixed.</p> <p> [many times: "stuff <br/>"] </p> </body> </html>
这让我想起了在页面底部具有“共享栏”和内容的网站。
所以…
CSS表达式曾经在较旧的IE中起作用,但在IE8中已被完全废弃:
Internet Explorer 8和更高版本,IE8 Standards模式或更高版本不再支持动态属性(也称为“CSS表达式”)。做出此决定是出于标准合规性,浏览器性能和安全性原因,如IE博客标题为“结尾表达式”中所述。动态属性在IE7模式或IE5模式下的Internet Explorer 8中仍然可用。
因此,可以说不再值得进一步学习。
如果没有,我应该怎么用?
根据用例,使用JavaScript或媒体查询。
正如@Yet Another Geek指出的那样,您可以使用来实现上述示例 position: fixed。IE6不支持该功能- CSS表达式可能是为解决此问题而创建的。
position: fixed