HTML5 实战PHP之Web页面表单设计


Posted in HTML / CSS onOctober 09, 2011

HTML5在页面结构,多媒体处理等多方面都与以往的HTML有很大的不同。在本教程中,将带领大家使用HTML5,CSS3及PHP实际设计一个符合HTML5标准的简单的表单提交网页,读者可以从中学习到HTML5 新的表单页面的基本元素。本文的读者为有一定HTML,CSS及PHP的读者学习

表单的设计草图

由于本文不是教photoshop制作的文章,因此只是把设计的表单的草图设计出来,然后去使用HTML5,CSS3和PHP去实现,我们要设计的表单草图如下图所示:
 

HTML5 实战PHP之Web页面表单设计

可以看到,在这个设计草图中,我们期望实现的效果是:当用户输入姓名时,NAME字段的文本框会以焦点的形式显示出来,而email的输入框仔细看,是一个圆角边框的输入框,而message的文本区域输入框中,可以看到有一张背景底图。而提交按钮则是一个自定义的按钮。

开始动手设计

接下来我们开始进行表单的设计。本文要使用的是php,因此可以用任何的PHP编程工具先建立一个index.php文件,然后开始编写符合HTML5标准的表单。

1)关于DOCTYPE

在HTML5中,关于DOCTYPE的声明将变得十分简单,代码如下:

复制代码
代码如下:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Contact Form</title>
</head>
<body>
</body>
</html>

看到了么?在HTML5中,对页面首部的类型声明,现在只需要一句:

就可以了,而对比下以前的HTML4,需要比较麻烦地去声明,如下:

复制代码
代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">.

接下来,我们开始设计页面表单的结构,我们先来看下如下图,表单的结构:
HTML5 实战PHP之Web页面表单设计
可以看到,我们分为Header头部区域,Main Body的表单主区域,Footer area则是表单的底部区域。而HTML5中,实现这一切其实十分简单,如下代码:
复制代码
代码如下:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Contact Form</title>
</head>
<body>
<header class="body">
</header>
<section class="body">
</section>
<footer class="body">
</footer>
</body>
</html>

可以看到,在这里没有了传统的div,取而代之的是,HTML5中新的标签元素header,footer和section,这些标签中的header标签是指定了页面头部区域,section则指定了页面的主体区域,footer部分则指定了页面的尾部区域,相比div,它们的含义更加清晰,从语义上更符合使用习惯。这里同时为它们指定了css类body,以统一它们的风格。

表单部分设计

接下来看下表单部分的设计,先看下代码如下:

复制代码
代码如下:

<form>
<label>Name</label>
<input name="name" placeholder="Type Here">
<label>Email</label>
<input name="email" type="email" placeholder="Type Here">
<label>Message</label>
<textarea name="message" placeholder="Type Here"></textarea>
<input id="submit" name="submit" type="submit" value="Submit">
</form>

下面介绍在HTML5中,input标签跟HTML4中的不同。在HTML5中,input标签同样有name和id等属性。而最大的不同,是HTML5中的type属性中,新增了很多类型,以适应用户的需求,但很遗憾的是,目前不是所有浏览器都支持这些新增的type属性,因此本文只讲解其中一些大部分浏览器都支持的新增type属性,比如其中上面例子中谈到的type=email,则是一个只允许用户输入email的文本框。即使有部分浏览器不支持email文本框的话也无所谓,因为会将其识别为一个传统的type=text的文本框,而在iOS系统上,当遇到type=email属性时,将会打开方便输入email的键盘布局,如下图所示:
 

HTML5 实战PHP之Web页面表单设计

而在type=email标签中,请留意其中的placeholder属性,这里设置为”type here”,意思是当用户没有在这个email框输入内容时,自动会出现提示用户输入的文字,这里很好地起到提醒的作用,比用一大堆javascript编写的效果要好,如下图:

HTML5 实战PHP之Web页面表单设计

HTML / CSS 相关文章推荐
css3气泡 css3关键帧动画创建的动态通知气泡
Feb 26 HTML / CSS
两种CSS3伪类选择器详细介绍
Dec 24 HTML / CSS
纯CSS改变webkit内核浏览器的滚动条样式
Apr 17 HTML / CSS
利用css3-animation实现逐帧动画效果
Mar 10 HTML / CSS
HTML5对手机页面长按会粘贴复制禁用的解决方法
Jul 19 HTML / CSS
html5自带表单验证体验优化及提示气泡修改功能
Sep 12 HTML / CSS
HTML5 Canvas渐进填充与透明实现图像的Mask效果
Jul 11 HTML / CSS
阻止移动设备(手机、pad)浏览器双击放大网页的方法
Jun 03 HTML / CSS
HTML5新特性之用SVG绘制微信logo
Feb 03 HTML / CSS
HTML5中的进度条progress元素简介及兼容性处理
Jun 02 HTML / CSS
通过HTML5规范搞定i、em、b、strong元素的区别
Mar 04 HTML / CSS
CSS中float高度塌陷问题的四种解决方案
Apr 18 HTML / CSS
HTML5标签小集
Aug 02 #HTML / CSS
HTML5的革新 结构之美
Jun 20 #HTML / CSS
HTML5 声明兼容IE的写法
May 16 #HTML / CSS
基于HTML5 audio元素播放声音jQuery小插件
May 11 #HTML / CSS
20佳惊艳的HTML5应用程序示例分享
May 03 #HTML / CSS
HTML5 本地存储和内容按需加载的思路和方法
Apr 07 #HTML / CSS
html5时钟实现代码
Oct 22 #HTML / CSS
You might like
谈谈PHP语法(2)
2006/10/09 PHP
php下删除一篇文章生成的多个静态页面
2010/08/08 PHP
shopex主机报错误请求解决方案(No such file or directory)
2011/12/27 PHP
php文件上传你必须知道的几点
2015/10/20 PHP
浅谈PHP表单提交(POST&amp;GET&amp;URL编/解码)
2017/04/03 PHP
javascript测试题练习代码
2012/10/10 Javascript
jQuery学习笔记(4)--Jquery中获取table中某列值的具体思路
2013/04/10 Javascript
jquery动态改变onclick属性导致失效的问题解决方法
2013/12/04 Javascript
Jquery 过滤器(first,last,not,even,odd)的使用
2014/01/22 Javascript
jquery中checkbox全选失效的解决方法
2014/12/26 Javascript
深入理解JavaScript系列(33):设计模式之策略模式详解
2015/03/03 Javascript
JavaScript中的this关键字使用方法总结
2015/03/13 Javascript
jQuery判断多个input file 都不能为空的例子
2015/06/23 Javascript
浅谈Javascript中的函数、this以及原型
2016/10/09 Javascript
JS在浏览器中解析Base64编码图像
2017/02/09 Javascript
JavaScript正则表达式校验与递归函数实际应用实例解析
2017/08/04 Javascript
Vue+jquery实现表格指定列的文字收缩的示例代码
2018/01/09 jQuery
vue2.0 子组件改变props值,并向父组件传值的方法
2018/03/01 Javascript
vue2.0 路由模式mode=&quot;history&quot;的作用
2018/10/18 Javascript
JavaScript Blob对象原理及用法详解
2020/10/14 Javascript
详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
2017/06/23 Python
Python实现运行其他程序的四种方式实例分析
2017/08/17 Python
opencv3/Python 稠密光流calcOpticalFlowFarneback详解
2019/12/11 Python
python 获取字典特定值对应的键的实现
2020/09/29 Python
浅析Python模块之间的相互引用问题
2021/02/26 Python
html5定制表单_动力节点Java学院整理
2017/07/11 HTML / CSS
HTML5实现签到 功能
2018/10/09 HTML / CSS
加拿大休闲和工业服装和鞋类零售商:L’Équipeur
2018/01/12 全球购物
孤独星球出版物:Lonely Planet Publications
2018/03/17 全球购物
SHEIN美国:购买时髦的女性服装
2020/12/02 全球购物
幼儿园小班评语大全
2014/04/17 职场文书
业务员岗位职责范本
2015/04/03 职场文书
同事离别感言
2015/08/04 职场文书
解决golang在import自己的包报错的问题
2021/04/29 Golang
java Nio使用NioSocket客户端与服务端交互实现方式
2021/06/15 Java/Android
python 安全地删除列表元素的方法
2022/03/16 Python