回头看看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 ...
随机推荐
- Droppable(放置组件)
一.class加载方式 <div id="pop" class="easyui-droppable" style="width: 400px;h ...
- mutt配置太繁琐,如果lz你只是单纯为了发邮件的话,其实用mailx就足以了
mutt配置太繁琐,如果lz你只是单纯为了发邮件的话,其实用mailx就足以了 复制内容到剪贴板 代码: yum -y install mailx echo "Server port fa ...
- 【记录】vue构建项目npm install错误run `npm audit fix` to fix them, or `npm audit` for details
今天构建vue项目执行npm install初始化后报错 run `npm audit fix` to fix them, or `npm audit` for details 出现这问题控制台会有一 ...
- linux上传与下载文件命令
//文件从Linux系统上传到其他系统. sz空格+文件名 //文件从其他系统下载到Linux系统. rz //之后会弹出路径选择框,选择文件,即可下载到当前路径.
- java命令-jstack
jstack用于生产java虚拟机当前时刻的线程快照.线程快照是当前java虚拟机内每一条线程正在执行的方法 堆栈的集合,生成线程快照的主要目的是定位线程出现长时间停顿的原因,比如线程间死锁.死循环. ...
- 使用pytorch测试单张图片(test single image with pytorch)
以下代码实现使用pytorch测试一张图片 引用文章: https://www.learnopencv.com/pytorch-for-beginners-image-classification-u ...
- POJ 2808 校门外的树(线段树入门)
题目描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米.我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置:数轴上的每个整数点,即0,1,2,……,L,都种 ...
- js 常用功能实现(函数)
1.10 个短小实用的代码片段 :https://www.jianshu.com/p/3ef822ec5a63 2.js常用函数 : https://www.cnblogs.com/wangyuyu ...
- 【从0到1,搭建Spring Boot+RESTful API+Shiro+Mybatis+SQLServer权限系统】03、创建RESTful API,并统一处理返回值
本节应用Spring对RESTful的支持,使用了如@RestController等注解实现RESTful控制器. 如果对Spring中的RESTful不太明白,请查看相关书籍 1.创建一个数据对象, ...
- MySQL strcmp 函数
STRCMP(str1, str2) 比较两个字符串,如果这两个字符串相等返回0,如果第一个参数是根据当前的排序小于第二个参数顺序返回-1,否则返回1. mysql> SELECT STRCMP ...