1,如何区分 HTML 和HTML5?
HTML和HTML5是两种不同版本的HTML标准,它们之间存在一些显著的区别,具体表现在以下几个方面:
- 文档声明:HTML的文档声明通常较长,包含了更多的信息。而HTML5的文档声明则相对简单,例如,HTML5的文档类型声明是“<!DOCTYPE html>”,这比HTML的声明要简短得多。
- 结构语义:HTML在结构语义化方面表现较弱,没有体现语义化的标签。而HTML5在这方面进行了显著的改进,添加了许多具有语义化的标签,如
<header>
、<footer>
、<article>
、<section>
等,这些标签可以更好地描述网页内容的结构和意义,使得网页内容更加清晰、易于理解和访问。 - 绘图功能:HTML主要使用可伸缩矢量图形(SVG)来定义网络的基于矢量的图形。而HTML5引入了新的绘图元素和API,如
<canvas>
元素,它允许使用脚本(通常是JavaScript)在网页上绘制2D图形、动画和游戏,并可以控制画布的每一个像素。 - 音频和视频支持:HTML在不使用第三方插件(如Flash)的情况下,不支持音频和视频。而HTML5原生支持嵌入音频和视频内容,通过
<audio>
和<video>
元素,无需依赖任何外部插件。 - 表单控件:HTML5还引入了一些新的表单控件,如日期选择器、颜色选择器和范围选择器等,使得表单更加易于使用和访问。
- 语法处理:与HTML相比,HTML5能够处理不准确的语法,这使得编写和解析HTML代码时具有更大的灵活性和容错性。
综上所述,HTML和HTML5在文档声明、结构语义、绘图功能、音频和视频支持、表单控件以及语法处理等方面都存在显著的差异。这些差异使得HTML5在网页设计和开发中更具优势,能够更好地满足现代网络应用的需求
2,如何处理 HTML5 新标签的浏览器兼容问题?
IE6/IE7/IE8 支持通过
document
方法产生的标签,利用这一特性让这些
浏览器支持 HTML5 新标签;
使用静态资源的
html5shiv
包:
1. 在
<head>
中调用以下代码:
<!--[if lt IE9]>
<script src="http://cdn.static.runoob.com/libs/html5shiv/3.7/html5shiv.min.js" ></script>
<![endif]-->
2.载入后,初始化新标签的 css:
header, section, footer, aside, nav, main, article, figure { display: block; }
3, HTML5 的文件离线储存怎么使用,工作原理是什么?
在线情况下,浏览器发现 HTML 头部有 manifest 属性,它会请求 manifest 文件,如
果是第一次访问,那么浏览器就会根据 manifest 文件的内容下载相应的资源,并进行离
线存储。如果已经访问过并且资源已经离线存储了,那么浏览器就会使用离线的资源加载
页面。然后浏览器会对比新的 manifest 文件与旧的 manifest 文件,如果文件没有发生
改变,就不会做任何操作,如果文件改变了,那么就会重新下载文件中的资源,并且进行
离线存储。
在页面头部加入 manifest 属性
1<html manifest='cache.manifest'>
在 cache.manifest 文件中编写离线存储的资源
CACHE MANIFEST
#v0.11
CACHE:
js/app.js
css/style.css
NETWORK:
Resourse/logo.png
FALLBACK:
//offline.html
未完待续。。。。。。