我无法在JS中设置一些东西。我的代码如下:
var closebutton = document.createElement('div');
closebutton.style.styleFloat = "right";
alert(closebutton.style.styleFloat);
closebutton.style.background = "#f00";
closebutton.innerHTML = '<a href="">✖</a>';
titlebar.appendChild(closebutton);
元素的背景确实是红色,加载时页面警告“正确”。然而,div并没有正确地浮动。 Firebug没有显示浮动的痕迹。错误控制台中没有错误或警告。
我很难过!
更新
正如所建议的那样,我也尝试过:
closebutton.style.float = 'right';
这也不起作用,在我的文本编辑器(gedit)中突出显示为鲜红色
答案 0 :(得分:12)
在JavaScript中设置浮动样式的标准方法是使用cssFloat
属性:
closebutton.style.cssFloat = 'right';
适用于所有浏览器,但不适用于IE,后者需要使用styleFloat
属性。因此,您可以检测浏览器,并应用适当的属性,或者同时设置它们:
closebutton.style.styleFloat = 'right';
closebutton.style.cssFloat = 'right';
请注意,float
是JavaScript中的保留字,不能用于点表示法。这同样适用于class
,例如,这是另一个保留字。这就是CSS属性的不同名称与JavaScript保留字(Source)冲突的原因。
进一步阅读:
答案 1 :(得分:3)
而不是closebutton.style.float
,请使用closebutton.style.cssFloat