假如有一个样式:
<style type="text/css">.dd2{
   margin-top: -762px;
   margin-left: 0px;
}
</style>
并且在js中创建了一个节点,
    Book_Div=document.getElementById("Book");  
    B_LI=document.createElement("img");
    B_LI.className='dd2';
    Book_Div.appendChild(B_LI);
由于需求,需要经常改变margin-top的值( 注:margin-top的值不止一两个,多次定义相似的样式应该不可取的)。除了重新定义样式外,不知js中可以改变已有样式的值吗?
请问大侠们在js中如何改变大的样式dd2中的margin-top的值。感激大家了。

解决方案 »

  1.   

    B_LI.className='dd2';
    B_LI.style.marginTop = '100px';
      

  2.   

    参考资料:Style对象
      

  3.   

    谢了,我把B_LI.style.marginTop = '100px';
    写成B_LI.style.margin-top = '100px';
    下面是不行的。但是请问为甚在定义样式就可以呢?郁闷!
      

  4.   

    B_LI.style.margin-top = '100px';
    //写成这样出现js语法错误了,JS解释器会认为表达式中的连字符是减号运算符
    //所以,如果CSS属性中含有连字符的多词属性对应的Style对象的属性名称是不一样的,连字符后的第一个字母变成大写形式你后面一句话我看不懂是什么意思。
      

  5.   

    看看
    B_LI.style.margin-top没有这个属性
      

  6.   

    我的意思是css中样式属性是margin-top:100px,而Style对象的属性确是marginTop,开始的时候我没有注意到。感谢大家的回答。