<html> <head> <title></title> <style> #div1{width:100px; height:120px; position:absolute; top:20px; left:100px; background:red; color:white; opacity:0.2; filter:alpha(opacity=20); } </style> </head> <body> <div id=div1>div1</div> <script> /******************************** *获取非行间样式 ok ******************************** *用js的style属性能够得到html标签的样式,可是不能获取非行间样式。 *那么怎么用js获取css的非行间样式呢? *在IE下能够用currentStyle,而在火狐下面咱们须要用到getComputed *已经对透明度作单独处理,兼容IE8 ff chrome。 */ function getStyle3(obj_, attr){ var obj = typeof obj == 'string' ? document.getElementById(obj_) : obj_;//防止传入的是ID,加强健壮性; var _value=obj.currentStyle? obj.currentStyle[attr] : //for IE only getComputedStyle(obj, false)[attr] ; //for ff/chrome only if (attr != 'opacity' ){//全部透明度都是[0, 100] return _value; }else{ return _value*100; } } var o = document.getElementById('div1'); alert( getStyle3(o, 'opacity') ); </script> </body> </html>
---- css