2010-02-06 2 views
53

По какой-то причине я не могу установить атрибуты «сверху» и «слева» CSS, используя следующий JavaScript.Настройка атрибутов верхнего и левого CSS

var div = document.createElement('div'); 
div.style.position = 'absolute'; 
div.style.top = 200; 
div.style.left = 200; 
document.body.appendChild(div); 

Использование Firebug я могу видеть, что div получает position набор для "absolute" но top и left атрибуты не установлены!

Это для Firefox 3.6.

ответ

97
div.style.top = "200px"; 
div.style.left = "200px"; 

?

8

Можно также использовать метод SetProperty, как показано ниже

document.getElementById('divName').style.setProperty("top", "100px"); 
2

div.style дает объект (CSSStyleDeclaration). Так как это объект, вы можете альтернативно использовать следующее:

div.style["top"] = "200px"; 
div.style["left"] = "200px"; 

Это полезно, например, если вам нужно получить доступ к «переменной» свойство:

div.style[prop] = "200px"; 
Смежные вопросы