Doctype到底咋用?
我写了一个泡泡撞边弹回的脚本,可加上类型声明就达不到我要的效果了,这是为啥?
<!DOCTYPE html>//加上Doctype就没有了撞边效果。。。。。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
</head>
<body>
<div id="good" style="position: absolute;"><img src="Sun.png"></div>
</body>
<script type="text/javascript">
var sunX=0;
var sunY=0;
var directX=1;
var directY=1;
function test(){
sunX+=directX;
sunY+=directY;
good.style.left=sunX+"px";
good.style.top=sunY+"px";
if(sunX+good.offsetWidth>=document.body.clientWidth||sunX<=0)
{
directX=-directX;
}
if(sunY+good.offsetHeight>=document.body.clientHeight||sunY<=0){
directY=-directY;
}
}
setInterval("test()",0.1);
</script>
</html>
大神们可以拷贝试一下......
这个就有必要解释一下doctype了
1、<!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前。
<!DOCTYPE> 声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。
2、在 HTML 4.01 中,<!DOCTYPE> 声明引用 DTD,因为 HTML 4.01 基于 SGML。DTD 规定了标记语言的规则,这样浏览器才能正确地呈现内容。HTML5 不基于 SGML,所以不需要引用 DTD。
3、请始终向 HTML 文档添加 <!DOCTYPE> 声明,这样浏览器才能获知文档类型。
4、HTML 4.01 与 HTML5 之间的差异在 HTML 4.01 中有三种 <!DOCTYPE> 声明。在 HTML5 中只有一种:<!DOCTYPE html>
5、不加这一行,就表示页面采用浏览器本身的解析标准,这样会造成页面在不同的浏览器(IE、火狐等)可能出现不同的显示效果。