HTML5 如果不写DOCTYPE ?

实名群众 2016-07-03 01:35:45
最近在复习前端的知识点,有一点不明白,

引用
<!DOCTYPE>声明位于位于HTML文档中的第一行,处于 <html> 标签之前。告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现


引用
HTML5 不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行);而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。


第一个说DOCTYPE是告知浏览器解析器用什么文档标准解析这个文档个,这是不是针对HTML4说的 ?因为HTML5什么标准都是只写<!DOCTYPE html>吧,都没有差别怎么告知解析器用什么文档标准?

第二个说,“让浏览器按照它们应该的方式来运行”,他们应该的方式是什么方式?按照第一个说的不写DOCTYPE是兼容模式,那正确写了DOCTYPE不是标准模式吗,HTML5在首行写上<!DOCTYPE html>应该算正确了吧,
但是,
!function(){
with({x:1}){
console.log(x);
}
}()

这样一行代码还是可以正确输出不报错啊。(标准模式不能用with?)

有人可以解惑一下吗,万分感谢。
HTML5中写和不写DOCTYPE会发生什么变化?
“让浏览器按照它们应该的方式来运行”具体是什么方式?
...全文
1395 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
写不写都可以吧。主要是是说是html文件。不别也没除错过。 不过还是建议加上这句话。缺了这行DW第一行有时会提示出错。其实没出错。
天际的海浪 2016-07-03
  • 打赏
  • 举报
回复
with()语句和DOCTYPE没关系。 with()语句是在javascript严格模式下不能用。
!function(){
	"use strict";
    with({x:1}){
   		console.log(x);
	}
}()

61,129

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧