10道或许你不熟练的前端HTML5的经典面试题
1.什么是HTML5?
答:HTML5是最新的HTML标准。
注意:讲述HTML5推出的设计目的,以及现在市场的使用情况,浏览器支持情况等。。。。
设计目的
HTML5的设计目的是为了在移动设备上支持多媒体。新的语法特征被引进以支持这一点,如video、audio和canvas 标记。HTML5还引进了新的功能,可以真正改变用户与文档的交互方式,包括:
· 新的解析规则增强了灵活性
· 新属性
· 淘汰过时的或冗余的属性
· 一个HTML5文档到另一个文档间的拖放功能
2.HTML5中什么是不同的新的表单元素类型?
答:提示本地验证表单需要再外面添加form标签包起来,才能查看效果
color
date
datetime-local
email
time
url
range
telephone
number
search
3.HTML5的页面结构同HTML4或者更前的HTML有什么区别?
答:一个典型的WEB页面包含头部,脚部,导航,中心区域,侧边栏。现在如果我们想在在HTML4的HTML区域中呈现这些内容,我们可能要使用DIV标签。
但是在HTML5中通过为这些区域创建元素名称使他们更加清晰,也使得你的HTML更加可读
以下是形成页面结构的HTML5元素的更多细节:(注意主要考的是标签语意化)
<header>:代表HTML的头部数据
<footer>:页面的脚部区域
<nav>:页面导航元素
<article>:自包含的内容
<section>:使用内部article去定义区域或者把分组内容放到区域里
<aside>:代表页面的侧边栏内容
4.哪些浏览器支持HTML5?
答:几乎所有的高版本浏览器Safari,Chrome,Firefox,Opera,IE8以上都支持HTML5
5.为什么HTML5里面我们不需要DTD(Document Type Definition文档类型定义)?
答:HTML5没有使用SGML或者XHTML,他是一个全新的东西,因此你不需要参考DTD,对于HTML5,你仅需放置下面的文档类型代码告诉浏览器识别这是HTML5文档即可
6.HTML5的离线储存?
答:localStorage 长期存储数据,浏览器关闭后数据不丢失;
sessionStorage 数据在浏览器关闭后自动删除。
7.浏览器是怎么对HTML5的离线储存资源进行管理和加载的呢?
答:(1) 在线的情况下,浏览器发现html头部有manifest属性,它会请求manifest文件,如果是第一次访问app,那么浏览器就会根据 manifest文件的内容下载相应的资源并且进行离线存储。如果已经访问过app并且资源已经离线存储了,那么浏览器就会使用离线的资源加载页面,然后 浏览器会对比新的manifest文件与旧的manifest文件,如果文件没有发生改变,就不做任何操作,如果文件改变了,那么就会重新下载文件中的资 源并进行离线存储。
(2)离线的情况下,浏览器就直接使用离线存储的资源。
8.请描述一下 cookies,sessionStorage 和 localStorage 的区别?
(1)cookie在浏览器和服务器间来回传递, sessionStorage和localStorage不会。
(2)sessionStorage和localStorage的存储空间更大。
(3)sessionStorage和localStorage有更多丰富易用的接口。
(4)sessionStorage和localStorage各自独立的存储空间。
9.页面可见性(Page Visibility)API 可以有哪些用途?
答:在页面被切换到其他后台进程的时候,自动暂停音乐或视频的播放。
10.HTML5的form如何关闭自动完成功能?
答:给不想要提示的input是设置autocomplete=off即可。