在标准模式下设置元素宽度或高度

在标准模式下,是否可以在JavaScript中设置HTML元素的宽度或高度(例如<div> )?

请注意以下代码:

 <html> <script language="javascript" type="text/javascript"> function changeWidth(){ var e1 = document.getElementById("e1"); e1.style.width = 400; } </script> <body> <input type="button" value="change width" onclick="changeWidth()"/> <div id="e1" style="width:20px;height:20px; background-color:#096"></div> </body> </html> 

当用户按下更改宽度button时, <div>的宽度应该改变。

当doctype声明决定怪癖模式时,它工作正常。 在标准模式下,我无法以这种方式更改元素的大小

是否有可能在标准模式下操作元素的大小? 如何绕过这种不良function?

尝试声明宽度的单位:

 e1.style.width = "400px"; // width in PIXELS 

style属性可以让你指定CSS属性的值。

CSS width属性采用长度作为其值。

长度需要单位。 在怪癖模式下,浏览器倾向于假定像素是由整数提供的,而不是长度。 指定单位。

 e1.style.width = "400px";