137

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

请注意以下代码:

<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>

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

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

是否可以在标准模式下操纵元素的大小?如何绕过这种功能障碍?

4

2 回答 2

212

尝试声明宽度单位:

e1.style.width = "400px"; // width in PIXELS
于 2011-01-12T10:30:19.283 回答
42

style属性允许您指定 CSS 属性的值。

CSSwidth属性将长度作为其值。

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

e1.style.width = "400px";
于 2011-01-12T10:32:56.477 回答