13

前端面试题总结——H5(持续更新中)

1.HTML5 为什么只需要写 <!DOCTYPE HTML>?

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

2.HTML5的form如何关闭自动完成功能?

给不想要提示的 form 或某个 input 设置为 autocomplete=off。

3.HTML5 中如何嵌入音频?

当前,audio 元素支持三种音频格式:
<!-- control 属性供添加播放、暂停和音量控件 -->
<!-- audio 元素允许多个 source 元素。source 元素可以链接不同的音频文件。
浏览器将使用第一个可识别的格式 -->

<audio controls="controls">

<source src=”jamshed.mp3″ type=”audio/mpeg”>
<source src=”jamshed.ogg″ type=”audio/ogg”>
Your browser does’nt support audio embedding feature.

</audio>

4.HTML5 中如何嵌入视频?

当前,video 元素支持三种视频格式:
<!-- 跟 audio 元素一样 -->
<video width="320" height="240" controls="controls">

<source src="movie.ogg" type="video/ogg">
<source src="movie.mp4" type="video/mp4">
Your browser does not support the video tag.

</video>

5.除了 audio 和 vidio,HTML5还有哪些媒体标签?

<embed> 标签定义嵌入的内容,比如插件。
<embed src="helloworld.swf" />
<source> 标签允许您规定可替换的视频/音频文件供浏览器根据它对媒体类型或者编解码器的支持进行选择。

<video width="320" height="240" controls="controls">

<source src="movie.ogg" type="video/ogg">
<source src="movie.mp4" type="video/mp4">
Your browser does not support the video tag.

</video>
<track> 播放带有字幕的视频:

<video width="320" height="240" controls="controls">

<source src="forrest_gump.mp4" type="video/mp4" />
<source src="forrest_gump.ogg" type="video/ogg" />
<track kind="subtitles" src="subs_chi.srt" srclang="zh" label="Chinese">
<track kind="subtitles" src="subs_eng.srt" srclang="en" label="English">

</video>

6.HTML5 canvas 元素有什么作用?

用于在网页上绘制图形,该元素标签强大之处在于可以直接在 HTML5 上进行图形操作
<!doctype html>
<html lang="en">
<head>

<meta charset="UTF-8">
<title>Document</title>

</head>
<body>

<canvas id="canvas"></canvas>
<script>
    var canvas=document.getElementById('canvas');
    var ctx=canvas.getContext('2d');
    ctx.fillStyle='#FF0000';
    ctx.fillRect(0,0,200,200);
</script>

</body>
</html>

7.HTML5 标准提供了哪些新的API?

1:canvas,不用多说,可以画出很多绚丽的图形,甚至可以直接做出伪3D游戏。

2:媒体控制,也很好理解(直译就是回放功能,假如只用html5.0以下的标签写,以前的音乐播放是不可能实现滚动条的。)

3:离线网页程序,可以把资源文件完全缓存在客户端,并且通过js的一些方法清空缓存

4:文档编辑,应该是更好的支持对文档的编辑。

5:拖动,可以将文件拖动到某些区域上传

6:跨文档请求,websocket,一种更加高效的通讯方式

7:历史管理,可以通过js管理和插入历史记录

8:MIME头自定义

9:客户端数据存储,localstoage sessionstoage

10:地理位置共享

11:本地数据库

12:索引数据库

8.HTML5 应用程序缓存和浏览器缓存有什么区别?

HTML5 引入了应用程序缓存,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问。
应用程序缓存为应用带来三个优势:
离线浏览 - 用户可在应用离线时使用它们
速度 - 已缓存资源加载得更快
减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源。
实现借助于 manifest 文件
<html manifest="demo.appcache">

9.你可以为 HTML 添加新的元素。

fuck{
Font-family:simhei;
Color:pink
}

10.Canvas 与 SVG 的比较:

SVG 是一种使用 XML 描述 2D 图形的语言。Canvas 通过 JavaScript 来绘制 2D 图形。
Svg支持事件处理器,canvas不支持事件处理器
在 SVG 中,每个被绘制的图形均被视为对象,而canvas能够以 .png 或 .jpg 格式保存结果图像
如果 SVG 对象的属性发生变化,那么浏览器能够自动重现图形。

11.HTML5 新的表单元素:

<datalist>
<keygen>
<output>


楷楷
4k 声望10.5k 粉丝

兴趣是最好的老师!