古人有云:温故而知新。活到老,学到老,作为一枚前端的程序猿,不停的学习能够让我们对我们的技术有一个更加丰富的认识。这几天,项目已经完成,但我发现自己的知识体系存在一些短板,特别是在H5方面,所以我又回过头来对H5进行了一个简单的温习回顾,在此过程中,我又发现了很多好玩的东西。

  H5是一个新的网络标准,因此它提供了一些新的元素和属性,反映了典型的现代用法。并且希望减少浏览器对于丰富的插件的依赖,通过一些语义化H5的新标签及其特性有利于搜索引擎的索引整理、小屏幕装置和视障人士使用。同时也为其他浏览器提供了一些新的功能。

  在对H5的温习回顾中,从新的标签特性开始,拟一篇文章,文章有标题,开头,内容包括章节,结尾,注释等,所以在H5中有了如下标签:

<header>这是页面开头</header>
<article>这是文章内容
<section>这是文章内容章节</section>
</article>
<aside>这是文章内容外的一些其他内容</aside>
<footer>这是页面结尾</footer>

以上标签构成了一个页面的基本框架,但是光有文本是不够的,还需要一些有趣的东西,于是:

<embed src="horse.wav" /> 其他插件的引入
<canvas id="myCanvas" width="200" height="200">canvas画布</canvas>
<audio>音频
<section src='#'>音频资源引入</section>
</audio>
<video>视频
<section src='#'>视频资源引入</section>
</video>

一个页面中肯定要有图片的插入,这时我们就会对图片有个简单的描述或者加上图片的标题:

<figure>
<figcaption>黄浦江上的的卢浦大桥</figcaption>
<img src="shanghai_lupu_bridge.jpg" width="350" height="234" />
</figure>

很好,接下来我们需要的是,给用户一些良好的体验:

<menu>
<command type="command">Click Me!</command>
</menu><!--定义命令按钮,比如单选按钮、复选框或按钮--> <input id="myCar" list="cars" />
<datalist id="cars">
<option value="BMW">
<option value="Ford">
<option value="Volvo">
</datalist><!--标签定义选项列表--> <form action="demo_keygen.asp" method="get">
用户名: <input type="text" name="usr_name">
加密: <keygen name="security">
<input type="submit">
</form><!--密钥生成-->
以及<rt> 给一些字符注音。

我们接着往下对我们的页面进行一个优化,让用户在视觉体验上有一些良好的感觉:

<progress value="22" max="100"></progress>
<!--加载时的一个进度条--> <meter value="3" min="0" max="10">十分之三</meter>
<meter value="0.6">60%</meter>
<!--度量给定范围的数据显示--> <form oninput="x.value=parseInt(a.value)+parseInt(b.value)">0// 计算的逻辑(方式)
<input type="range" id="a" value="50">100+
<input type="number" id="b" value="50">=
<output name="x" for="a b"></output>// 用于显示计算结果
</form><!--对一些结果或者内容进行一个动态输出-->

到这一步,一个页面,加上之前H4的一些标签以及CSS、CSS3样式混合使用进来,一个基本的页面就完成了。如果还需要一些更加深入的交互验证的良好体验:

   <input type="button" value="按钮"/><!-- 按钮 -->
<input type="submit" value="提交"/>><!-- 提交按钮 --> <input type="color"/><!-- 选色板 --> <input type="date"/><!-- 时间 年月日 -->
<input type="datetime"/><!-- UTC时间 存在兼容 -->
<input type="datetime-local"/><!-- 当地时间 年月日时分 -->
<input type="week"/><!-- 周 X年X周 -->
<input type="time"/><!-- 时间 时分 -->
<input type="month"/><!-- 月 年月 -->
<input type="year"/><!-- 年 --> <input type="email"/><!-- 电子邮箱 -->
<input type="file" value="浏览"/><!-- 文件上传 -->
<input type="hidden"/><!-- 存储一些少量的信息 -->
<input type="image" /><!-- 图片 -->
<input type="password" /><!-- 图片 -->
<input type="range" /><!-- 数字控件 -->
<input type="radio" name="sex"/><!-- 单选 -->
<input type="radio" name="sex"/><!-- 单选 -->
<input type="checkbox" name="hobby"/><!-- 复选 -->
<input type="search"/><!-- 搜索 -->
<input type="tel"/><!-- 手机号 手机键盘调出数字键盘 -->
<input type="url"/><!-- URL地址 -->

如此一来,我们的页面就更加地丰富多彩了。

  根据这条逻辑线,对H5的记忆也格外的清晰,以上便是我在对H5的温习回顾中,整理出来的,其实H5增添的一些新标签以及特性并非没有逻辑性,仔细一看,它们还是挺可爱的,你们说呢?

浅谈 温故知新——HTML5!的更多相关文章

  1. 浅谈:html5和html的区别

    什么是html5呢? html5最先由WHATWG(Web 超文本应用技术工作组)命名的一种超文本标记语言,随后和W3C的xhtml2.0(标准)相结合,产生现在最新一代的超文本标记语言.可以简单点理 ...

  2. 浅谈HTML5单页面架构(一)——requirejs + angular + angular-route

    心血来潮,打算结合实际开发的经验,浅谈一下HTML5单页面App或网页的架构. 众所周知,现在移动Webapp越来越多,例如天猫.京东.国美这些都是很好的例子.而在Webapp中,又要数单页面架构体验 ...

  3. 浅谈HTML5单页面架构(二)——backbone + requirejs + zepto + underscore

    本文转载自:http://www.cnblogs.com/kenkofox/p/4648472.html 上一篇<浅谈HTML5单页面架构(一)--requirejs + angular + a ...

  4. 浅谈html5网页内嵌视频

    更好的阅读体验:浅谈html5网页内嵌视频 如今在这个特殊的时代下:flash将死未死,微软和IE的历史问题,html5标准未定,苹果和谷歌的闭源和开源之争,移动互联网的大势所趋,浏览器各自为战... ...

  5. AngularJS进阶(二十五)requirejs + angular + angular-route 浅谈HTML5单页面架构

    requirejs + angular + angular-route 浅谈HTML5单页面架构 众所周知,现在移动Webapp越来越多,例如天猫.京东.国美这些都是很好的例子.而在Webapp中,又 ...

  6. 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理

    [微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...

  7. 浅谈html5 video 移动端填坑记

    这篇文章主要介绍了浅谈html5 video 移动端填坑记,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 本文介绍了html5 video 移动端填坑记,分享给大家,具体 ...

  8. 浅谈WebService的版本兼容性设计

    在现在大型的项目或者软件开发中,一般都会有很多种终端, PC端比如Winform.WebForm,移动端,比如各种Native客户端(iOS, Android, WP),Html5等,我们要满足以上所 ...

  9. 浅谈JS之AJAX

    0x00:什么是Ajax? Ajax是Asynchronous Javascript And Xml 的缩写(异步javascript及xml),Ajax是使用javascript在浏览器后台操作HT ...

随机推荐

  1. 《Linux内核精髓:精通Linux内核必会的75个绝技》一HACK #14 虚拟存储子系统的调整

    HACK #14 虚拟存储子系统的调整 本节介绍如何使用/proc进行虚拟存储子系统的调整.虚拟空间存储方式在Linux上向应用程序分配内存时,是通过以页面为单位的虚拟存储方式进行的.采用虚拟存储方式 ...

  2. 二维码名片的格式 - vcard(非常好,可直接添加到手机通讯录)

    分享到 一键分享 QQ空间 新浪微博 百度云收藏 人人网 腾讯微博 百度相册 开心网 腾讯朋友 百度贴吧 豆瓣网 搜狐微博 百度新首页 QQ好友 和讯微博 更多... 百度分享   登录|注册     ...

  3. 迷你MVVM框架 avalonjs 1.2.6发布

    avalon.mobile 针对GCC压缩器进行优化 avalon.mobile对浏览器是否支持触屏使用更好的判定 监控数组的splice,remove,removeAt进行了重构,修改直接删掉列表的 ...

  4. Information Retrieval II

    [Information Retrieval II] 搜索引擎分类: 1.目录式搜索引擎. 2.全文搜索引擎. 3.元搜索引擎(Meta-Search Engine). 搜索引擎的4个阶段:下载(cr ...

  5. ORA-10873

    [问题现象] SQL> ALTER DATABASE OPEN; alter database open * ERROR at line 1: ORA-10873: file 36 needs ...

  6. Kubernetes的UI界面Kubernetes Dashboard的搭建

    1.搭建准备 Kubernetes集群的安装部署 2.搭建过程 2.1.在master节点上创建kubernetes-dashboard.yaml cd /etc/kubernetes vim kub ...

  7. vmware虚拟机开机报附件中的错误的解决办法

    Virtualized Inter VT-x/EPT is incompatible with this virtual machine configuration 在没有虚拟化msg.inter.h ...

  8. Spring boot 、mybatis、swagger、c3p0、redis 和mongodb 整合

    文件路径:            添加依赖: <?xml version="1.0" encoding="UTF-8"?> <project ...

  9. [转].NET 4.5+项目迁移.NET Core的问题记录 HTTP Error 502.5

    本文转自:http://www.cnblogs.com/ronli/p/5900001.html 这几天试着把目前的开发框架迁移到新的.net core平台,中间遇到的问题在这里简单记录一下. 迁移过 ...

  10. Homestead window10 storage:link 不能建立符号链接的处理办法

    重启电脑 1. 以管理员身份运行 cmd 2. vagrant up 3. vagrant ssh 4. php artisan storage:link