回头看看HTML5
前言:自从学习各种框架各种成熟的控件库,越来越觉得疲惫。
一、用语义元素构造网页
在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的更多相关文章
- nw.js桌面软件开发系列 第0.1节 HTML5和桌面软件开发的碰撞
第0.1节 HTML5和桌面软件开发的碰撞 当我们谈论桌面软件开发技术的时候,你会想到什么?如果不对技术本身进行更为深入的探讨,在我的世界里,有这么多技术概念可以被罗列出来(请原谅我本质上是一个Win ...
- HTML5 Canvas核心技术图形动画与游戏开发(读书笔记)----第一章,基础知识
一,canvas元素 1 为了防止浏览器不支持canvas元素,我们设置“后备内容”(fallback content),下面紫色的字即为后备内容 <canvas id="canvas ...
- 大话ASP.NET开发(第一章 html5+css3+解耦问题的探讨)
一.拉近我们的距离 我想,很多人会问,如今IE6还占据颇多份额的中国,html5.css3是否还很遥远?我会很直接告诉他们:其实就在你的眼前.我们来看两个图: ...
- html5之canvas画图
导航 前言 基本知识 绘制矩形 清除矩形区域 圆弧 路径 绘制线段 绘制贝塞尔曲线 线性渐变 径向渐变(发散) 图形变形(平移.旋转.缩放) 矩阵变换(图形变形的机制) 图形组合 给图形绘制阴影 绘制 ...
- 基于HTML5的燃气3D培训仿真系统
最近上线了的基于HTML5的燃气3D培训仿真系统,以前的老系统是采用基于C++和OpenGL的OpenSceneGraph引擎设计的,OSG引擎性能和渲染效果各方面还是不错的,但因为这次新产品需求要求 ...
- HTML5定稿一周年,你必须要重新认识HTML5了
原文网址链接:http://www.csdn.net/article/2015-11-24/2826317 去年此时,W3C定稿了HTML5.我曾发表一篇文章<HTML 5终于定稿,为什么原生A ...
- 玩转html5<canvas>画图
导航 前言 基本知识 绘制矩形 清除矩形区域 圆弧 路径 绘制线段 绘制贝塞尔曲线 线性渐变 径向渐变(发散) 图形变形(平移.旋转.缩放) 矩阵变换(图形变形的机制) 图形组合 给图形绘制阴影 绘制 ...
- 基于HTML5气3D仿真培训系统
根据最近的上线HTML5的燃气3D培训仿真系统.曾经的老系统是採用基于C++和OpenGL的OpenSceneGraph引擎设计的,OSG引擎性能和渲染效果各方面还是不错的,但由于这次新产品需求要求能 ...
- html5 PACS漫谈
2012年html5标准制定之后,其中canvas标签给程序猿提供了图像绘制的接口. 在医疗领域从事PACS开发的我发现BS结构的PACS系统开发有了新可能,不再需要客户端安装flash.active ...
随机推荐
- poj2752Seek the Name, Seek the Fame(next数组)
题目传送门 Seek the Name, Seek the Fame Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 2439 ...
- Java模拟HttpClient进行Get和Post提交
使用Java模拟客户端进行提交,需要用到apache http client jar,这里用的是4.4版本 GET: public void GetURL(){ String strResp=&qu ...
- Centos7下源码编译安装与配置redis5.0
1.下载redis5.0源码包 wget http://download.redis.io/releases/redis-5.0.5.tar.gz 2.检查是否安装过之前的历史版本 rpm -qa|g ...
- JAVA 实现Jacob语音播报
准备工作:下载Jar 链接:https://pan.baidu.com/s/1edskJjYrCiefVJ7l3Ul9kQ 提取码:6dg9 ---导入jar 解压jar包,将jacob.ja ...
- 三、IDS4建立authorization server
建立authorization server 一.环境搭建 1.创建项目 2.引用NuGet的identityserver4 3.配置asp.net core 管道 打开Startup.cs, 编辑C ...
- C#驱动mysql明明数值不为空却一直说DBNull.Value的诡异情况
最近遇见了一个很诡异的情况,就是当我们关联表查询时,副表如果有bit类型的字段的话,C#驱动读取该列时就会抛出“DBNull.Value不能转换为其他类型”的异常,但是我们如果拿出sql语句单独查询的 ...
- interrupt和interrupted和isInterrupted的区别
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11413917.html interrupt Code Demo package org.fool.th ...
- UNP学习第八章udp
一.基本UDP套接口编程 #include <sys/socket.h> ssize_t recvfrom(int sockfd, void *buff, size_t nbytes, i ...
- Python基础教程(010)--第一个程序Hello Python
前言 会编写Hello Python源程序 内容 1,在桌面下,新建Python目录 2,在认识的Python目录下,新建一个HelloPython的文件 linux下: touch HellPyth ...
- 在ios微信中提交form,php端收不到参数的问题
今天做h5页面时,微信浏览器中提交form表单,发现php端收不到post过来的参数,在普通浏览器中可以,安卓微信也可以,$_POST,$_GET,$_REQUEST等方式都不行. 后来,把form表 ...