一、doctype的作用,严格与混杂模式的区别,有何意义
1、语法格式:<!DOCTYPE html>
2、<!DOCTYPE>不是Html标签,而是告知浏览器此页面使用哪个HTML版本进行编写的指令
3、html 4.01中有如下三种模式
1、html 4.01 Strict 严格模式,不包含展示性(纯粹为页面展示服务的标签,如:b、font等,因为这些在css中有相应的替代方案)和弃用的元素,如:font,不允许框架集(framesets);
2、html 4.01 Transitional 过滤模式,包含展示性和弃用元素,但不包含框架集(framesets);
3、html 4.01 Frameset 宽松模式,包含展示性与弃用元素,也包含构架集(framesets);
4、xhtml 中有如下四种模式
1、xhtml 1.0 Strict 严格模式,不包含展示性与弃用的标签,不允许框架集(framesets),且严格以xml格式来编写标记;
2、xhtml 1.0 Transitional 过滤模式,包含展示性与弃用标签,不允许框架集(framesets),且严格以xml格式来编写标记;
3、xhtml 1.0 Frameset 宽松模式,包含展示性与弃用标签,允许框架集(framesets),且严格以xml格式来编写标记;
4、xhtml 1.1,等同于xhtml 1.0 strict,但允许添加模型。
5、标准模式与混杂的的区别
1、这两种模式主要是浏览器厂商提炼出来的,标准模式时浏览器会根据规范来呈现页面,而混杂模式时浏览器则以向后兼容的方式呈现;
2、Mozilla和Safari则用了“几乎标准模式”,就是在处理表格的方式上有一此细微的差异;
3、最大问题就是IE的盒子渲染机制,出现border-box(怪异模式)、content-box方式;
6、如何触发混杂模式
1、html 4.01文档,如果包含transitional(过滤)DTD但没有URI则以混杂模式渲染;
2、如果xhtml、html不存在<!DOCTYPE>标签,则已混杂模式渲染
二、HTML5为什么只需要写<!DOCTYPE HTML>
主要原因为html5中只有一个文档类型,就是html,而不像html 4.01或xhtml1.0还有多个文档类型。
三、行内元素、块级元素,空元素有那些
1、行内元素:span、a、em(强调)、label、textarea、select、sub、sup等
2、块级元素:div、ul、ol、li、h1~h6、table、form、p、dl、dd、dt等。
3、空元素:br、hr
四、link与@import导入样式的区别
1、html页引用css的三种,一是页内的style标签,二、link外链;三是@import导入
2、link是xhtm标签,不只外链css,还是可是rss服务,而@import只能是css
3、link外链的文件会与文档同步加载,而@import则是等待文档加载完成后才加载
4、link没有兼容性问题,而@import是css2.1规范中的,低版本浏览器不支持
5、link支持使用js控制DOM元素样式,而@import不可以(也就是说可以通过javascript来操作link标签来改变css文档,以达到更换皮肤的效果,而用@import则不行)
XML/HTML Code复制内容到剪贴板- <style>
- @import url('test.css');
- </style>
以上这篇关于HTML面试题全部汇总就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
原文地址:http://www.cnblogs.com/cqhaibin/archive/2016/07/24/5701943.html