为了账号安全,请及时绑定邮箱和手机立即绑定

为什么在HTML文件里少了doctype定义这句就可以实现div块的移动?????

为什么在HTML文件里少了doctype定义这句就可以实现div块的移动?????

qq_小柯_1 2016-03-11 19:45:29
为什么一下代码少了<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">这句div块就可以成功的移动了?????<html ><head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Document</title> <style type="text/css">         .class1    {        width:100px;        height:100px;        background-color:Blue;        position:absolute;         left:100px;          top:100px;    } </style> <script type="text/javascript">         function show(){          var box=document.getElementById('box');          var x = box.offsetLeft                      x += 0.5;//每隔40毫秒就向右移动0.5位置                      box.style.left = x;//为什么不可以直接使用left来计算呢因为进行加法运算时,必须是数字而left接受的值是字符串所以需要中间变量来调解            }         function Move(){          setInterval('show()', 40);         } </script></head><body> <input type="button" value="右移" onclick="Move();"/> <div id="box" class="class1"></div> </body></html>
查看完整描述

4 回答

已采纳
?
qq_大寒_2

TA贡献173条经验 获得超185个赞

我把你那段代码去掉doctype这句这边可以跑了。。。我查了w3c资料//img1.sycdn.imooc.com//56e2b6bf0001513507160133.jpg

估计和这个有关,我也说不出所以然来,应该是不支持吧。有空再去了解了解

查看完整回答
反对 回复 2016-03-11
  • qq_小柯_1
    qq_小柯_1
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">我使用了HTML 4.0版本就可以正常了
  • qq_小柯_1
    qq_小柯_1
    ,查了一下 有这个说法“每个web建议标准(比如html 4 frameset和xhtml 1.0 transitional)都有自己的dtd。 假如文档中的标记不遵循doctype声明所指定的dtd,这个文档除了不能通过代码校验之外,还有可能无法在浏览器中正确显示。对于标记不一致的问题,浏览器相较于校验器来说更宽容。但是,不正确的doctype声明经常导致网页不正确显示,或者导致它们根本不能显示。 ”
  • qq_大寒_2
    qq_大寒_2
    估计不正确的doctype声明出问题。明白了
  • 4 回答
  • 0 关注
  • 2055 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信