HTML5的基本特征

1、向前兼容性

核心理念——平滑过渡!

不支持html5的浏览器可以向前兼容,并不会影响web内容的显示!

2、跨平台运行性

从pc浏览器到手机、平板电脑,甚至是智能电视。

只要用户的设备支持HTML5,基于HTML5的web程序就可以无障碍的运行!

3、简单易用性

相对HTML4.01,HTML5更加简单实用。

没有XHTML2.0那样严格的语法规则。

(<HTML5的属性精简表示方法可以大大提高html文本的传输效率!> <HTML5 Web Form提供一套强大的表单验证机制,无需冗长的JS代码验证!>)

4、用户友好性

强化web页面的变现性能:Audio、video、canvas 等标签元素的引入;

提高用户体验度:地理位置服务、本地数据存储、文件上传、离线应用等新特性。

HTML5的新功能

1、简化的DOCTYPE声明

HTML4.01标准版本的DOCTYPE的声明

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://ww.w3.org/TR/html4/strict.dtd"> 

HTML4.01过度版本的DOCTYPE的声明

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://ww.w3.org/TR/html4/loose.dtd"> 

HTML4.01基于框架的HTML文档版本的DOCTYPE的声明

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://ww.w3.org/TR/html4/frameset.dtd"> 

HTML5中的DOCTYPE声明(对字母大小写不敏感)

<!DOCTYPE HTML>

2、简化的编码字符集

对于HTML4.01标准编码字符集声明

<meta http = "Content-Type" content = "text/html;chatset = utf-8">

HTML5的编码字符集声明

<metachatset = "utf-8">

3、简化的样式表和脚本引入

HTML4.01标准的html文档中引入的样式表和脚本文本

<link href = "test.css" type = "text/css" rel = "stylesheet"> 
<script src = "test.js" type = "text/javascript"></script>

HTML5中标准的html文档引入的样式文本和脚本文本

<link href = "test.css" rel = "stylesheet">
<script src = "test.js"></scritpt>

4、新增的全局属性

contenteditable属性(true:表示设置HTML元素可编辑。 false:默认值,设置HTML元素不可编辑! )

<p contenteditable = "true">可编辑的内容</p>
<p contenteditable = "false">不可编辑的内容</p>

spellcheck属性(true/false :是否对用户输入的内容进行语法拼写检查,若检查不通过,下划线标注)

<label for = "input">内容</label>
<input type = "text" id = “input” spellcheck = "ture">

draggable属性(true/false:制定html元素是否可进行拖动。用法同contentditable一样)

dropzone属性(属性如下,用来规定当元素被拖动时发生的动作!)

dropzone属性 说明
copy 创建拖动元素的一个副本
link 将拖动元素移动到一个新的位置
move 创建拖动元素的链接

hidden属性(默认显示)

<label>输入框隐藏:<input type = “text”  hidden></label>
<label>输入框显示:<input type = “text”></label>

5、语义化标签之文档元素(不理解语义化的可以参考——“让标签语义化成为一种习惯”博文)

header标签 :用来定义一个文档结构的“页眉”。通常情况下,会和h1-h6标签和hgroup标签组合,表示一个内容块的标题,或者是包含一个搜索框、导航栏、logo等栏目;

 /*未用CSS进行格式控制*/
<header>
<hgroup>
<h1>HTML5</h1>
<h4>语义化标签之文档元素</h4>
</hgroup>
<input type="search" results="9">
</header>

footer标签 :用来定义一个文档结构的“页眉”。通常用来表示文档的作者信息、相关链接,版权资料等;

 <footer>
作者:<em>wanglehui</em>
工作单位:<em>CSUST Ddream Stadion </em>
</footer>

hgroup标签 :用来定义一个文档中标题组。即一个内容块包含主标题和多个副标题时,多个h1-h6标签可以放在hgroup标签里面;

 <hgroup>
<h1>HTML5</h1>
<h4>语义化标签之文档元素</h4>
</hgroup>

nav标签:用来定义一个文档中的导航区域,通常只用于页面的主要导航,侧边栏导航不适用;

 <nav>
<ul>
<li>nav部分一</li>
<li>nav部分二</li>
<li>(nav部分)</li>
</ul>
</nav>

article标签:用来定义一个文档中自成一体的东西,比如,论坛的帖子、博客的文章或者用户的评论。通常article标签里面有header、footer等标签。也可以自己嵌套使用;

 <article>
<header>
<h2>语义化标签之文档元素</h2>
</header>
<p>文章内容....</p>
<article>
<h2>评论</h2>
<article>
<header>
<h3>评论者:访客甲</h3>
</header>
<p>甲的评论内容</p>
</article>
<article>
<header>
<h3>评论者:访客乙</h3>
</header>
<p>乙的评论内容</p>
</article>
</article>
<footer>
作者:<em>wanglehui</em>
工作单位:<em>CSUST Ddream Stadion</em>
</footer>
</article>

section标签:用来定义一个文档结构中的“章节”内容,section和article的区别:article定义的是一个文档的独立版块,是一个容器元素。而section定义的是一个文档中的组成部分,和父标签是从属关系。article和section之间允许相互嵌套;

 <section>
<h1>语义化</h1>
<article>
<h2>HTML5新功能介绍</h2>
<p>介绍内容...</p>
<section>
<h3>其他内容</h3>
<p>内容介绍....</p>
</section>
</article>
</section>

aside标签:通常包含在article标签中作为主要内容的附属信息部分。因此,aside和article常常组合使用,用来作为页面或站点全局的附属信息部分。

 <article>
<h2>HTML5新功能介绍</h2>
<p>介绍内容...</p>
<aside>
<h1>附属信息</h1>
<p>附属信息内容。。。。</p>
</aside>
<footer>
作者:<em>wanglehui</em>
工作单位:<em>CSUST Ddream Stadion</em>
</footer>
</article>

6、语义化标签之文本元素(不理解语义化的可以参考——“让标签语义化成为一种习惯”博文)

b 标签:bold 定义加粗文本;

i 标签:Italic 定义倾斜文本;

u 标签:underline 定义下划线文本;

 <b>HTML5新功能</b> <br/><br/>
<i>HTML5新功能</i> <br/><br/>
<u>HTML5新功能</u> <br/><br/>

code 标签:定义计算机代码文本,通常指单行的代码。多行代码用pre标签;
pre 标签:用来定义与格式化的文本。也就是说可以保留原有的空格和换行符,用途:显示长代码。

 <code>
//This is a javascript code.<br/>
function foo(){
alert("警告");
}
</code>
<pre>
//This is a javascript code.<br/>
function foo(){
alert("警告");
}
</pre>

q 标签:quote 用来定义引用文本,q标签用来标记的是一行文本。

cite 标签:用来定义引用文本,与q不同的是,cite标签引用的通常是书籍杂志的标题。

blockquote 标签:用来标记长文本引用,和q不同的是,q标签用来标记的是一行文本。

 <q>今朝有酒今朝醉,明日愁来明日愁</q><br/><br/>
<q>今朝有酒今朝醉,明日愁来明日愁<cite>——唐·罗隐《自遣》</cite></q>
<blockquote>
得即高歌失即休,多愁多恨亦悠悠。
今朝有酒今朝醉,明日愁来明日愁。
</blockquote>

time 标签:定义一个时间显示文本,有两个属性。datetime:定义元素的日期和时间,如果未定义该属性,则必须在元素的内容中规定日期或时间。pubdate:定义特定文档的发布时间。(在浏览器中没有实际的效果)

 <p>我们在每天早上 <time>9:00</time> 开始营业。</p>

 <p>我在 <time datetime="2008-02-14">情人节</time> 有个约会。</p>

注释:<time> 标签不会在任何浏览器中呈现任何特殊效果。且目前主流浏览器都不支持time标签。

<time> 标签定义公历的时间(24 小时制)或日期,时间和时区偏移是可选的。

该元素能够以机器可读的方式对日期和时间进行编码,这样,举例说,用户代理能够把生日提醒或排定的事件添加到用户日程表中,搜索引擎也能够生成更智能的搜索结果。

总结:总结的不是很全面,目前用的也不是很熟练。都是写基础的知识,望大家能指出其中不足的地方,O(∩_∩)O谢谢!

参考书籍:【HTML5+CSS3技术应用】——郭小成

HTML5基本特性和新功能的更多相关文章

  1. JDK14的新特性-Switch新功能

    2020年3月17日,Oracle正式发布了JDK14版本,共新增了16项新特性 本文重点写一下关于switch的新功能: switch 表达式扩展了 switch 语句,使其不仅可以作为语句(sta ...

  2. JAVA 8 主要新特性 ----------------(三)新功能Lambda表达式入门

    一.简述       Java为了扩充匿名方法在1.8中新追加的特性.本身Java之前的版本是没有匿名方法的,只有匿名对象. 二.使用        Java中使用匿名方法必须要对应接口中的一个抽象方 ...

  3. hadoop3.0新特性及新功能

    Hadoop-3.0.0-alpha2版本发布,相比之前的hadoop-2.x有一系列的功能增强.但目前还是个alpha版本,有很多bug,且不能保证API的稳定和质量. 主要变化 Java最低版本要 ...

  4. Atitit. visual studio vs2003 vs2005 vs2008  VS2010 vs2012 vs2015新特性 新功能.doc

    Atitit. visual studio vs2003 vs2005 vs2008  VS2010 vs2012 vs2015新特性 新功能.doc 1.1. Visual Studio2 1.2. ...

  5. Redis 7.0 新功能新特性总览

    说明:本文根据Redis 7 RC2 的release note 整理并翻译 近日,Redis 开源社区发布了7.0的两个预览版.在这两个预览版中,有很多Redis 7.0中新增加的特性,新增加的命令 ...

  6. Android 9 新功能 及 API 介绍(提供了实用的模块化的功能支持,包括 人工智能)

      Android 9(API 级别 28)为用户和开发者引入了众多新特性和新功能. 本文重点介绍面向开发者的新功能. 要了解新 API,请阅读 API 差异报告或访问 Android API 参考. ...

  7. HTML5的十大新特性

    为了更好地处理今天的互联网应用,HTML5添加了很多新元素及功能,比如: 图形的绘制,多媒体内容,更好的页面结构,更好的形式 处理,和几个api拖放元素,定位,包括网页 应用程序缓存,存储,网络工作者 ...

  8. 【新功能前瞻】SpreadJS 纯前端表格控件V12.2:打印增强、拖拽填充等六大特性

    新版本来袭:葡萄城 SpreadJS 纯前端表格控件的全新版本 V12.2 将于8月正式发布! 作为一款备受华为.招商银行.中国平安.苏宁易购等行业专家和前端开发者认可的纯 JavaScript 电子 ...

  9. PHP 5.6正式发布:新特性、及功能改进介绍

    经过了长时间的开发测试,新版本PHP程序(PHP5.6正式版)终于发布了.新版本中加入了一些实用的新特性,也摒弃了一些冗余的功能.同时,也对部分原有功能进行了改进.下面就一起看看PHP 5.6正式版到 ...

随机推荐

  1. nginx.conf的events,http段一般固定配置

    nginx.conf的events,http段一般固定配置 user nobody nobody; #使用的用户可以按照实际情况修改 worker_processes ; #指定nginx开启的进程数 ...

  2. Edge detection using LoG

    intensity梯度值分布跟图片的大小有关, 比如将一张小图片放大后会变得很模糊, 原先清晰的edge, 即大的梯度值变得模糊. 但是原有的边缘通常还是肉眼可分辨的. 但用Sobel 算子可能就检测 ...

  3. Windows Server 2008 R2 每隔一段时间自动关机解决办法

    情况描述: “我的电脑-->右键属性”中显示“已激活”,而“管理工具”中显示未激活.系统中有进程wlms.exe. 网上找了下解决方式: 1.提权工具:PSTOOLS(下载地址:http://m ...

  4. 计算&IO密集型任务的 优化

    问题原因: 最近由于工作实际需求,需要对某个计算单元的计算方法进行重构.原因是由于这个计算单元的计算耗时较长,单个计算耗时大约在1s-2s之间,而新的需求下,要求在20s内对大约1500个计算单元计算 ...

  5. lucene-查询query->FuzzyQuery相近词语的搜索

    FuzzyQuery是一种模糊查询,它可以简单地识别两个相近的词语.下面以11.10为例进行详细介绍. package ch11; import org.apache.lucene.analysis. ...

  6. cygwin-使用介绍

    cygwin使用: 使用上的方便性很是不错,启动Cygwin以后,会在Windows下得到一个Bash Shell,由于Cygwin是以Windows下的服务运行的,所以很多情况下和在Linux下有很 ...

  7. Python开发最常犯错误总结10种

    不管是在学习还是工作过程中,人都会犯错.虽然Python的语法简单.灵活,但也一样存在一些不小的坑,一不小心,初学者和资深Python程序员都有可能会栽跟头.本文是Toptal网站的程序员梳理的10大 ...

  8. MVVM: 通过 Binding 或 x:Bind 结合 Command 实现,通过非 ButtonBase 触发命令

    介绍背水一战 Windows 10 之 MVVM(Model-View-ViewModel) 通过 Binding 或 x:Bind 结合 Command 实现,通过非 ButtonBase 触发命令 ...

  9. JAVA对文件类型的校验

    通常,在WEB系统中,上传文件时都需要做文件的类型校验,大致有如下几种方法: 1. 通过后缀名,如exe,jpg,bmp,rar,zip等等. 2. 通过读取文件,获取文件的Content-type来 ...

  10. OPENGGL深度测试

    深度测试是为了解决那些在绘图过程中本应该被隐藏的面结果却出现了,例如: 绘图代码中先绘制了一个一个近处的立方体,后绘制了一个远处的立方体,结果在绘制过程中,远处的立方体总是在近处的立方体后绘制,所以在 ...