HTML5里的placeholder属性使用实例和美化显示效果的方法


Posted in HTML / CSS onApril 23, 2014

placeholder属性能够让你在文本框里显示提示信息,一旦你在文本框里输入了什么信息,提示信息就会隐藏。你以前可能无数次看到这种效果,但那些大部分是用JavaScript里实现的,而现在,HTML5提供了原生支持,而且效果更好!

HTML代码

复制代码
代码如下:
<input type="text" name="first_name" placeholder="你的姓名..." />

你也看见了,需要做的只是在文本框的声明标签上加入placeholder属性。完全不需要JavaScript来创造这种效果。

检查浏览器是否支持Placeholder属性

因为placeholder是一种新属性,很有必要检查一下你的浏览器是否支持它,比如IE6、IE8肯定是不支持的:

复制代码
代码如下:

function hasPlaceholderSupport() {
var input = document.createElement('input');
return ('placeholder' in input);
}

如果用户的浏览器不支持placeholder特征,你需要借助MooTools, Dojo, 或其它JavaScript工具来实现它:
复制代码
代码如下:

/* mootools ftw! */
var firstNameBox = $('first_name'),
message = firstNameBox.get('placeholder');
firstNameBox.addEvents({
focus: function() {
if(firstNameBox.value == message) { searchBox.value = ''; }
},
blur: function() {
if(firstNameBox.value == '') { searchBox.value = message; }
}
});

用CSS美化placeholder

在进一步研究时我发现了另外一个有趣的CSS功能:CSS美化INPUT placeholder效果。下面让我来用简单的CSS代码美化文本框里的placeholder文字。

CSS代码

火狐浏览器里的用法和谷歌浏览器里不太一样。它们的名称都很好理解:

复制代码
代码如下:

/* all */
::-webkit-input-placeholder { color:#f00; }
::-moz-placeholder { color:#f00; } /* firefox 19+ */
:-ms-input-placeholder { color:#f00; } /* ie */
input:-moz-placeholder { color:#f00; }
/* individual: webkit */
#field2::-webkit-input-placeholder { color:#00f; }
#field3::-webkit-input-placeholder { color:#090; background:lightgreen; text-transform:uppercase; }
#field4::-webkit-input-placeholder { font-style:italic; text-decoration:overline; letter-spacing:3px; color:#999; }
/* individual: mozilla */
#field2::-moz-placeholder { color:#00f; }
#field3::-moz-placeholder { color:#090; background:lightgreen; text-transform:uppercase; }
#field4::-moz-placeholder { font-style:italic; text-decoration:overline; letter-spacing:3px; color:#999; }

你可以控制placeholder文字的字体、颜色和风格。你甚至可以将文本框的placeholder以动画方式显示。 美化你的文本框都是些看起来很小的事情,但对于一些交互式的网站来说,成功的关键就在于细节。现在IE10里也只支持placeholder了,相信越来越多的人会使用这种原生的placeholder效果。

HTML / CSS 相关文章推荐
详解使用CSS3的@media来编写响应式的页面
Nov 01 HTML / CSS
CSS Grid布局教程之网格单元格布局
Dec 30 HTML / CSS
关于box-sizing的全面理解
Jul 28 HTML / CSS
CSS3效果:自定义“W”形运行轨迹实例
Mar 29 HTML / CSS
详解CSS3 rem(设置字体大小) 教程
Nov 21 HTML / CSS
HTML5 placeholder属性详解
Jun 22 HTML / CSS
详解html5 canvas常用api总结(二)--绘图API
Dec 14 HTML / CSS
详解px单位html5响应式方案
Mar 08 HTML / CSS
使用PDF.JS插件在HTML中预览PDF文件的方法
Aug 29 HTML / CSS
手摸手教你用canvas实现给图片添加平铺水印的实现
Aug 20 HTML / CSS
Html5页面获取微信公众号的openid的方法
May 12 HTML / CSS
CSS3 制作的悬停缩放特效
Apr 13 HTML / CSS
HTML5的hidden属性兼容老浏览器的方法
Apr 23 #HTML / CSS
HTML5中的Scoped属性使用实例
Apr 23 #HTML / CSS
HTML5添加鼠标悬浮音响效果不使用FLASH
Apr 23 #HTML / CSS
html5菜单折纸效果
Apr 22 #HTML / CSS
html5读取本地文件示例代码
Apr 22 #HTML / CSS
使用html5制作loading图的示例
Apr 14 #HTML / CSS
html5的canvas元素使用方法介绍(画矩形、画折线、圆形)
Apr 14 #HTML / CSS
You might like
CSS中简写属性要注意TRouBLe的顺序问题(避免踩坑)
2021/03/09 HTML / CSS
javascript编程起步(第六课)
2007/02/27 Javascript
javascript call方法使用说明
2010/01/11 Javascript
JavaScript中的this实例分析
2011/04/28 Javascript
javascript 禁用IE工具栏,导航栏等等实现代码
2013/04/01 Javascript
jQuery循环滚动新闻列表示例代码
2014/06/17 Javascript
Javascript基础教程之argument 详解
2015/01/18 Javascript
JavaScript中数据结构与算法(三):链表
2015/06/19 Javascript
javascript瀑布流布局实现方法详解
2016/02/17 Javascript
AngularJS 防止页面闪烁的方法
2017/03/09 Javascript
浅谈JavaScript find 方法不支持IE的问题
2017/09/28 Javascript
无限循环轮播图之运动框架(原生JS实现)
2017/10/01 Javascript
vue自定义filters过滤器
2018/04/26 Javascript
vue2.x集成百度UEditor富文本编辑器的方法
2018/09/21 Javascript
微信小程序之onLaunch与onload异步问题详解
2019/03/28 Javascript
微信小程序实现音乐播放器
2019/11/20 Javascript
[38:40]2018DOTA2亚洲邀请赛 4.6淘汰赛 mineski vs LGD 第一场
2018/04/10 DOTA
Python正则表达式教程之二:捕获篇
2017/03/02 Python
使用Pyinstaller的最新踩坑实战记录
2017/11/08 Python
浅谈利用numpy对矩阵进行归一化处理的方法
2018/07/11 Python
Python功能点实现:函数级/代码块级计时器
2019/01/02 Python
Python3.5面向对象与继承图文实例详解
2019/04/24 Python
pyqt5、qtdesigner安装和环境设置教程
2019/09/25 Python
python selenium循环登陆网站的实现
2019/11/04 Python
Python3.7下安装pyqt5的方法步骤(图文)
2020/05/12 Python
Linux常见面试题
2016/10/04 面试题
保洁主管岗位职责
2013/11/20 职场文书
农救科工作职责
2013/11/27 职场文书
教育专业个人求职信
2013/12/02 职场文书
设备售后服务承诺书
2014/05/30 职场文书
单位活动策划方案
2014/08/17 职场文书
作弊检讨书
2015/01/27 职场文书
2015年秘书个人工作总结
2015/04/25 职场文书
php7中停止php-fpm服务的方法详解
2021/05/09 PHP
Python经常使用的一些内置函数
2022/04/11 Python
开发微信小程序之WXSS样式教程
2022/04/18 HTML / CSS