Вот скрипт который динамически выравнивает блок
<body>
<div class="test" style="position:fixed;left:50%;top:50%;background:red">abracadabra<br>abracadabra</div>
<script>
var $ = document.getElementsByClassName('test');
for(x=0;x<$.length;x++){
$[x].style.marginTop = $[x].offsetHeight/-2;
$[x].style.marginLeft = $[x].offsetWidth /-2;
}
</script>
</body>
Все работает , но когда пишу !DOCTYPE html , то работать перестает.
В чем дело и чё делать?