CSS Expression用法总结
CSS Expression用法总结
转自http://www.chencheng.org/demo/css-expression.php
CSS Expression,动态 CSS 属性,IE 私有,自 5.0 开始引入(IE8 将不再支持),参考 MSDN,不过有时用javascript动态生成它作为IE6的hack还是不错的!
这东西的优点:
使 CSS 属性动态生成,所以基本 js 能干的它都能干
使用 CSS 选择符,比 js 遍历到某个特定元素要方便得多
这东西的缺点:
expression 会反复执行,有严重的效率问题。它的触发似乎不是通过事件,而是通过 interval 一类的机制。
别的浏览器不支持,IE8 也将不再支持
IE6 的背景闪烁 Bug Fix
1.body {
2. zoom: expression(function(el){
3. document.execCommand('BackgroundImageCache', false, true);
4. el.style.zoom = '1';
5. }(this));
6.}
给不同 type 的 input 赋予不同的样式
1.input {
2. zoom: expression(function(el){
3. el.style.zoom = "1";
4. el.className ? el.className+=" "+el.type : el.className=el.type;
5. }(this));
6.}
隔行换色(zebra lists)
01..test {
02. unicode-bidi: expression(function(el){
03. el.style.unicodeBidi = "normal";
04. var childs = el.getElementsByTagName("li");
05. for(var i=0; i<childs.length; i++){
06. (i % 2)?childs[i].className+=" even":childs[i].className+=" odd";
07. }
08. }(this));
09.}
模拟 :before 或者 :after
01..test {
02. letter-spacing: expression(function(el){
03. el.style.letterSpacing = "0";
04. var newchild = document.createElement("span");
0
相关文档:
我们经常用js控制CSS样式,从而达到良好的用户界面和动态效果。我们经常使用的两种方式:
方法1:
var element= document.getElementById(”id”);
element.style.width=”200px”;
element.style.height=”200p ......
我喜欢3栏布局的网页设计,但是3栏布局相对来说就比较复杂,有些难以控制,尽管时下正火的Web2.0似乎很少采用3栏布局。但没关系,我们是非非非主流。
首先,任何一个布局通常都有headers, navigation bars, content containers,
......
CSS可以处理高度、宽度、深度三个维度。在前面的课程中,我们已经了解了前两个维度。在本课中,我们将学习如何令不同元素具有层次。简言之,就是关于元素堆叠的次序问题。
为此,你可以为每个元素指定一个数字(z-index)。其原理是:数字较大的元素将叠加在数字较小的元素之上。
比方说,我们正在打扑克,并且拿了一手同 ......