0

我正在尝试在 javascript 中设置 div 的宽度和高度,但它没有被设置。我已经尝试了很多,但没有任何效果。这是我尝试过的,

<div id="d1">asdasd</div>

<script>
  var d = document.getElementById("d1");
  d.style.width = "100px";
  d.style.height = "100px";
  d.style.cssText = 'border:1px solid black;'
</script>

请检查是什么问题!

4

9 回答 9

5

我认为d.style.cssText覆盖widthheight属性

试试这个:

var d = document.getElementById("d1");
d.style.width = "100px";
d.style.height = "100px";
d.style.cssText += 'border:1px solid black;'
于 2012-11-05T06:54:13.843 回答
3

正如 karaxuna 提到的,您d.style.cssText正在覆盖宽度和高度设置。只需将您的代码更改为:

var d = document.getElementById("d1");
d.style.width = "100px";
d.style.height = "100px";
d.style.border = '1px solid black';

或这个:

var d = document.getElementById("d1");
d.style.cssText = 'border:1px solid black;'
d.style.width = "100px";
d.style.height = "100px";

完美运行。

于 2012-11-05T07:01:08.710 回答
2

您的问题与d.style.cssText = 'border:1px solid black;'. 它覆盖了 JS 设置的宽度和高度。

检查这个小提琴: -

http://jsfiddle.net/RZKnQ/1/

于 2012-11-05T07:03:18.053 回答
1

这有效:

<div id="d1" style="border:1px solid black;">asdasd</div>​
<script>
var d = document.getElementById("d1");
d.style.height = "200px";
</script>

http://jsfiddle.net/dandv/emnMb/4/

于 2012-11-05T06:53:34.663 回答
1

另一种方法是在 CSS 中定义一个新的样式元素并简单地设置d.className为该 CSS 元素。

我猜

d.style.cssText 

是问题

于 2012-11-05T06:56:53.533 回答
0

更改您的 JS 语句的顺序它将起作用,即

<script>
    var d = document.getElementById("d1");
    d.style.cssText = 'border:1px solid black;'
    d.style.width = "100px";
    d.style.height = "100px";
</script>

最好只将宽度、高度属性放在样式属性中。IE

d.style.cssText = 'border:1px 纯黑色; 宽度:100 像素;高度:100px'

或在 CSS 类中

于 2012-11-05T06:57:56.463 回答
0
d.style.cssText = 'border:1px solid black;'
d.style.float="left";
d.style.width = "100px";
d.style.height = "100px";​

您需要使用 float:left 属性。

于 2012-11-05T07:00:12.907 回答
0

我不知道你的问题是什么,但我已经使用了这个并且它有效

    function fnc1()
{
    document.getElementById("d1").style.width="100px";
    document.getElementById("d1").style.height="100px";
    document.getElementById("d1").style.backgroundColor="red";
}
于 2012-11-05T07:01:35.713 回答
0

HTML:

<div id="d1">asdasd</div>​

Javascript

document.getElementById('d1').style.height = 90+'px';​

在这里工作演示(适用于 chrome,不检查其他浏览器)

于 2012-11-05T07:02:33.920 回答