Setting top and left CSS attributes

Deniz Dogan picture Deniz Dogan · Feb 6, 2010 · Viewed 120.3k times · Source

For some reason I'm unable to set the "top" and "left" CSS attributes using the following JavaScript.

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

Using Firebug I can see that the div gets the position set to "absolute" but the top and left attributes are not set!

This is for Firefox 3.6.

Answer

Lyubomyr Shaydariv picture Lyubomyr Shaydariv · Feb 6, 2010

Your problem is that the top and left properties require a unit of measure, not just a bare number:

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