前言:自从学习各种框架各种成熟的控件库,越来越觉得疲惫。

一、用语义元素构造网页

在html5中最常用到的页面结构相关的语义元素如下:

页面结构想相关的语义元素
元素 说明
<article> 表示一篇任何形式的文章,即类似新闻报道,论坛帖子或博客文章(不包括评论或作者简介)等能够独立的内容区块
<aside> 表示独立于页面主内容的一个完整的内容块。例如,可以用<aside>
<figure>和<figcaption> 表示一副插图。其中<figcaption>元素标注图题(插图的标题),而<figure>元素标注<figcaption>和插入图片的<img>元素。目标是反映图片与图题之间的关联的
<footer> 表示页面底部的页脚。通常是很小的一块内容,包括小字号的版权声明,简单的链接
<header> 表示增强型的标题,可以包含HTML标题和其他内容。其他内容可以是标志,作者署名或一组指向后面内容的导航链接
<nav> 表示页面中重要的一组链接。其中的链接可以指向当前页面的主题,也可以指向网站的其他页面。实际上,一个页面包含多个<nav>也很正常
<section> 表示文档中的一个区块,或者表示一组文档。
<main> 表示页面的主内容。比如,可以使用<main>包含<article>元素,隔离网站的页眉、页脚和侧边栏。该元素是HTML5新增的

二、编写更有意义的标记

认识三个新的文本级的语义元素:

1.使用<time>标注日期和时间

//示例
The party starts <time>2014-03-21</time>

2.使用<output>标注JavaScript返回值

//示例
<p>Your BMI:<output id="result"></output></p>

3.使用<mark>标注突显文本

<mark>元素用于标注一段文本,这段文本会突出显示。在需要引用其他人的内容,而你想引起别人注意时,就可以使用<mark>元素。

三、构建更好的表单

1.理解表单

  通常所说的表单,就是一组文本框、列表、按钮及其他可以点击的小控件,通过这些小控件可以收集网站所有访客的某些信息。

  所有的基本表单的工作方式都类似,即用户填写信息然后单击按钮。此时,浏览器会收集用户输入的信息并将其发送给服务器。在服务器上,有软件程序负责处理信息,并决定下一步的操作。服务端的这个程序可能要联系数据库,可能是读取数据也可能是写入数据,之后再把新的页面发送给浏览器。

  注意:无论采用什么方式,过程都差不多的,即 检查表单数据;对数据进行某种处理;然后再发回一个新网页。

2.HTML5验证的原理

基本原理:HTML5表单验证的基本原理就是你来告诉浏览器要验证那个字段。

在两个地方验证(二者缺一不可)

  1.客户端验证:主要为访客方便。

  2.服务器端验证:确保数据正确性。

使用正则表达式:所谓正则表达式,就是一种用正则表达式语言编写的文本模式。常用于搜索和验证。

新的输入控件:

HTML表单有一个奇怪的做法,即用一个元素(含含糊糊的叫<input>)创建多个控件:复选框、文本框、以及按钮。此时,type属性就成了地地道道的总开关。

电子邮件地址:

<input type="email"></input>

网址:

<input type="url"></input>

搜索框:

<input type="serach"></input>

电话号码:

<input type="tel"></input>

数值:

<input type="number"></input>

滑动条:

<input type="range"></input>

日期和时间:

<input type="date"></input>

回头看看HTML5的更多相关文章

  1. nw.js桌面软件开发系列 第0.1节 HTML5和桌面软件开发的碰撞

    第0.1节 HTML5和桌面软件开发的碰撞 当我们谈论桌面软件开发技术的时候,你会想到什么?如果不对技术本身进行更为深入的探讨,在我的世界里,有这么多技术概念可以被罗列出来(请原谅我本质上是一个Win ...

  2. HTML5 Canvas核心技术图形动画与游戏开发(读书笔记)----第一章,基础知识

    一,canvas元素 1 为了防止浏览器不支持canvas元素,我们设置“后备内容”(fallback content),下面紫色的字即为后备内容 <canvas id="canvas ...

  3. 大话ASP.NET开发(第一章 html5+css3+解耦问题的探讨)

    一.拉近我们的距离 我想,很多人会问,如今IE6还占据颇多份额的中国,html5.css3是否还很遥远?我会很直接告诉他们:其实就在你的眼前.我们来看两个图:                      ...

  4. html5之canvas画图

    导航 前言 基本知识 绘制矩形 清除矩形区域 圆弧 路径 绘制线段 绘制贝塞尔曲线 线性渐变 径向渐变(发散) 图形变形(平移.旋转.缩放) 矩阵变换(图形变形的机制) 图形组合 给图形绘制阴影 绘制 ...

  5. 基于HTML5的燃气3D培训仿真系统

    最近上线了的基于HTML5的燃气3D培训仿真系统,以前的老系统是采用基于C++和OpenGL的OpenSceneGraph引擎设计的,OSG引擎性能和渲染效果各方面还是不错的,但因为这次新产品需求要求 ...

  6. HTML5定稿一周年,你必须要重新认识HTML5了

    原文网址链接:http://www.csdn.net/article/2015-11-24/2826317 去年此时,W3C定稿了HTML5.我曾发表一篇文章<HTML 5终于定稿,为什么原生A ...

  7. 玩转html5<canvas>画图

    导航 前言 基本知识 绘制矩形 清除矩形区域 圆弧 路径 绘制线段 绘制贝塞尔曲线 线性渐变 径向渐变(发散) 图形变形(平移.旋转.缩放) 矩阵变换(图形变形的机制) 图形组合 给图形绘制阴影 绘制 ...

  8. 基于HTML5气3D仿真培训系统

    根据最近的上线HTML5的燃气3D培训仿真系统.曾经的老系统是採用基于C++和OpenGL的OpenSceneGraph引擎设计的,OSG引擎性能和渲染效果各方面还是不错的,但由于这次新产品需求要求能 ...

  9. html5 PACS漫谈

    2012年html5标准制定之后,其中canvas标签给程序猿提供了图像绘制的接口. 在医疗领域从事PACS开发的我发现BS结构的PACS系统开发有了新可能,不再需要客户端安装flash.active ...

随机推荐

  1. hive数据库导入与导出

    原文连接:https://www.cnblogs.com/654wangzai321/p/9970321.html 把Hive表数据导入到本地 table->local file insert ...

  2. shell字符串的空值检查

  3. android jni控制gpio (rk3288)

    1.添加驱动程序 2.编写jni c程序编译为库给java调用 3.app调用jni静态链接库操作底层驱动 1.添加驱动程序 修改/work/rk3288/firefly-rk3288_android ...

  4. nginx实现高性能负载均衡的Tomcat集群

    1. 安装软件: nginx 两个apache-tomcat 安装过程省略. 2.配置两个tomcat的http端口,第一个为18080,第二个为28080 注意:需要把server.xml文件中所有 ...

  5. js 数组、字符串、Json互相转换

    arr.join(): 数组转字符串 let arr = [1,2,3,4]; let str = arr.join(','); arr.split():字符串转数组 let str = '1,2,3 ...

  6. python3.x 浅谈修饰器

    #装饰器用法,好处#简化代码,避免重复性代码#打印日志 @log#检测性能 @performance#数据库事务 @transaction#URL路由 @post('/register') 简单例子: ...

  7. Android开发文档

    https://developer.android.com/ 用ke学上网方能打开

  8. 带你认识SATA、mSATA 、PCIe和M.2四种接口

    http://mst.zol.com.cn/615/6150989.html 犹记得当年Windows7系统体验指数中,那5.9分磁盘分数,在其余四项的7.9分面前,似乎已经告诉我们机械硬盘注定被时代 ...

  9. bzoj 3251

    http://www.lydsy.com/JudgeOnline/problem.php?id=3251 这道题在北京八十中的时候有人讲过.. 不过由于自己continue 写掉了一个所以调了很久. ...

  10. 彻底理解 JS 中 this 的指向

    首先必须要说的是,this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,实际上this的最终指向的是那个调用它的对象(这句话有些问题,后面会解释为什么会有问题,虽然 ...