javascript改变样式(cssFloat,styleFloat)

昨天遇到一用js改变元素浮动的,当时直接写了 obj.style.float="left";结果没起作用;查了资料后才发现不能这样写,现在整理下几种样式写法

1,直接写css属性的,如:obj.style.height/width/color/position等

2,要改大写的,如:obj.style.fontSize/marginLeft/backgroundColor等

3,float,此属性在IE中用obj.style.styleFloat="left";

        在ff等其他浏览器中用obj.style.styleFloat="left";

第三中兼容性写法:obj.style[‘cssFloat‘ in obj.style?‘cssFloat‘:‘styleFloat‘]=‘left‘;具体例子如下

 1 <style type="text/css">
 2     #content{
 3         width: 1000px;
 4         margin: 0 auto;
 5         background: #66c;
 6         overflow: hidden;
 7     }
 8     #left{
 9         width: 200px;
10         height: 50px;
11         background: #c66;
12         color: #fff;
13     }
14 </style>
1    <div id="content">
2         <div id="left">left</div>
3         <div id="main">main</div>
4     </div>
1     <script type="text/javascript">
2       var oLeft=document.getElementById(left);
3       oLeft.style[cssFloat in oLeft.style?cssFloat:styleFloat]=left;
4     </script>

这样就通过js改变了id为left的float属性

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。