doctype和onclick事件

时间:2014-12-04 13:10:41

标签: javascript html

有人可以解释为什么以下代码,我只是将div移动到鼠标点击位置,只有在我删除DOCTYPE标签时才有效吗?

<!DOCTYPE html>
<html lang="en">
<head>
    <title>Prova</title>
    <style>
      .bbox{
        width: 10px;
        height:10px;
        position:absolute;
        background-color: orange;
    }
</style>
</head>
<body onclick = "moves()">
   <script>
       function moves(){
       var cordx;
       var cordy;
       var d;
       var e = window.event;
       d= document.getElementById('box');
       cordx = e.clientX;
       cordy = e.clientY;
       d.style.left = cordx;
      d.style.top = cordy;

    }
  </script>



<div class="bbox" id='box'></div>
</body>
</html>

1 个答案:

答案 0 :(得分:2)

CSS要求lengths0除外)具有单位。

您要将整数分配给d.style.leftd.style.top

如果您forget the Doctype,那么浏览器会认为该页面是在90年代编写的,emulates the bugs是那个时代的浏览器所具有的。一旦这样的错误将CSS中的整数视为像素值而不是错误。

使用+ "px"