古人有云:温故而知新。活到老,学到老,作为一枚前端的程序猿,不停的学习能够让我们对我们的技术有一个更加丰富的认识。这几天,项目已经完成,但我发现自己的知识体系存在一些短板,特别是在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. HDU-3944 DP?(组合数求模)

    一.题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=3944 二.题意 给一个巨大的杨辉三角,采用类似DP入门题“数字三角形”的方式求从顶点$(0, 0) ...

  2. <转>cocos2d-x学习笔记(五)仿真树叶飘落效果的实现(精灵旋转、翻转、钟摆运动等综合运用)

    转载自ufolr的博客 原文连接:http://blog.csdn.net/ufolr/article/details/7624851 最近项目中需要一个落叶的效果,本来想用粒子特效来实现,但是几经调 ...

  3. ubuntu16.04初始化配置

    允许root登录 sudo passwd root 启动网卡DHCP并配置DNS vi /etc/network/interfaces auto ens3 #auto lo iface ens3 in ...

  4. eclipse 预览Android界面报错

    This version of the rendering library is more recent than your version of ADT plug-in. Please update ...

  5. win10 切换语言英文版

    win10 切换英文语言 start > right click>control panel> time Language>laguage>Add >English ...

  6. DrawGrid DrawFocusRect

    http://docwiki.embarcadero.com/CodeExamples/XE7/en/GridLineWidth_%28C%2B%2B%29 void __fastcall TForm ...

  7. 跟我学算法- tensorflow VGG模型进行测试

    我们使用的VGG模型是别人已经训练好的一个19层的参数所做的一个模型 第一步:定义卷积分部操作函数 mport scipy.io import numpy as np import os import ...

  8. ScheduledThreadPoolExecutor 线程池调度 使用

    package other; import java.util.concurrent.Callable; import java.util.concurrent.Executors; import j ...

  9. 向ArcGIS的ToolBarControl中添加任意的windows组建的方法[转]

    向ArcGIS的ToolBarControl中添加任意的windows组建的方法[转] Link: http://www.cnblogs.com/mymhj/archive/2012/10/12/27 ...

  10. layer插件open方法回掉值问题

    最近做项目需用到一个弹出层加载iframe页面的东西,首先想到layer插件,此插件用到过多次,兼容性很好,功能也强大,废话不多说上代码. 其实功能很简单,就是在目标页面选择一个值,回掉回来,说明一下 ...