2010-02-06 15 views
53

Por alguna razón, no puedo establecer los atributos CSS "superior" e "izquierda" con el siguiente JavaScript.Configuración de los atributos CSS superiores e izquierdos

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

Usando Firebug puedo ver que el div obtiene el conjunto position a "absolute" pero los topleft y atributos no se fijan!

Esto es para Firefox 3.6.

Respuesta

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

?

8

También puede utilizar el método setProperty como a continuación

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

div.style produce un objeto (CSSStyleDeclaration). Ya que es un objeto, puede utilizar alternativamente la siguiente:

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

Esto es útil, por ejemplo, si necesita acceder a una propiedad "variable":

div.style[prop] = "200px"; 
Cuestiones relacionadas