doctype

作者: 糖心m | 来源:发表于2017-06-26 22:50 被阅读36次

    doctype是什么,举例常见doctype及特点

    1.声明必须处于HTML文档的头部,在标签之前,HTML5中不区分大小写

    2.声明不是一个HTML标签,是一个用于告诉浏览器当前HTMl版本的指令,告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。

    3.现代浏览器的html布局引擎通过检查doctype决定使用兼容模式还是标准模式对文档进行渲染,一些浏览器有一个接近标准模型。

    4.在HTML4.01中声明指向一个DTD,由于HTML4.01基于SGML,所以DTD指定了标记规则以保证浏览器正确渲染内容。HTML5不基于SGML,所以不用指定DTD常见doctype:

    1.HTML4.01 strict:不允许使用表现性、废弃元素(如font)以及frameset。声明:

    2.HTML4.01 Transitional:允许使用表现性、废弃元素(如font),不允许使用frameset。声明:

    3.HTML4.01 Frameset:允许表现性元素,废气元素以及frameset。声明:

    4.XHTML1.0 Strict:不使用允许表现性、废弃元素以及frameset。文档必须是结构良好的XML文档。声明:

    5.XHTML1.0 Transitional:允许使用表现性、废弃元素,不允许frameset,文档必须是结构良好的XML文档。声明:

    6.XHTML 1.0 Frameset:允许使用表现性、废弃元素以及frameset,文档必须是结构良好的XML文档。声明:

    7.HTML 5: 严格模式与混杂模式——如何触发这两种模式,区分它们有何意义。在标准模式中,浏览器根据规范呈现页面;在混杂模式中,页面以一种比较宽松的向后兼容的方式显示。浏览器根据DOCTYPE是否存在以及使用的哪种DTD来选择要使用的呈现方法。如果XHTML文档包含形式完整的DOCTYPE,那么它一般以标准模式呈现。对于HTML 4.01文档,包含严格DTD的DOCTYPE常常导致页面以标准模式呈现。包含过渡DTD和URI的DOCTYPE也导致页面以标准模式呈现,但是有过渡DTD而没有URI会导致页面以混杂模式呈现。DOCTYPE不存在或形式不正确会导致HTML和XHTML文档以混杂模式呈现。html5有哪些新特性、移除了那些元素?

    如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?

    HTML5 现在已经不是 SGML 的子集,主要是关于图像,位置,存储,多任务等功能的增加。新的元素:section, video, progress, nav, meter, time, aside, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, mark, output, rp, rt, ruby, source, summary, wbr。input元素的新类型:date, email, url,tel,search,range,color等等。新的属性:ping(用于a与area), charset(用于meta), async(用于script)。全域属性:id, tabindex, repeat。新的全域属性:contenteditable, contextmenu, draggable, dropzone, hidden, spellcheck。

    移除元素:acronym, applet, basefont, big, center, dir, font, frame, frameset, isindex, noframes, strike, tt。支持HTML5新标签:IE8/IE7/IE6支持通过document.createElement方法产生的标签,可以利用这一特性让这些浏览器支持HTML5新标签,浏览器支持新标签后,还需要添加标签默认的样式。当然也可以直接使用成熟的框架、比如html5shim; src="http://html5shim.googlecode.com/svn/trunk/html5.js"如何区分HTML5: DOCTYPE声明\新增的结构元素\功能元素

    相关文章

      网友评论

          本文标题:doctype

          本文链接:https://www.haomeiwen.com/subject/vvcscxtx.html