Я пытаюсь добавить <div>
с помощью JavaScript, а затем изменить его атрибуты width / height / top / left. Но когда я использую XHTML 1 Transitional doctype, он перестает работать.
Вот как я создаю <div>
:
var div=document.createElement("div");
document.body.appendChild(div);
div.innerHTML='<div id="myID" style="z-index:9998;border: 1px solid #000000;
border-radius:3px;position: absolute; display: block;top:-10000;left:-10000;
width:400; height:400;"></div>';
Итак, изначально myDiv
не виден пользователю, так как его левый и верхний края находятся вне экрана
Затем при некоторых действиях клика я делаю следующее:
var myDiv=document.getElementById("myID");
myDiv.style.top=200;
myDiv.style.left=200;
Это прекрасно работает, если я не помещаю в HTML тип документа. Как только я ставлю doctype, он перестает работать.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
При использовании типа документа он перестает принимать значения top / left / width / height. Но если я установлю значения ширины / высоты / верхнего / левого с единицами измерения (то есть, px), то все будет хорошо.
myDiv.style.top="200px";
myDiv.style.left="200px";
Итак, каково влияние doctype на выполнение JavaScript при изменении стиля (или, может быть, других вещей)?