HTML5 placeholder属性详解
(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun)
HTML5里新引入很多有趣的新特征;有些体现在HTML里,有些是JavaScript API,全部非常的有用。其中我最喜欢的一个特征就是文本框(INPUT)里的placeholder属性。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功能: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效果。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持程序员之家。相关文章
- Placeholder是HTML5新增的另一个属性,当input或者textarea设置了该属性后,该值的内容将作为灰字提示显示在文本框中,当文本框获得焦点时,提示文字消失2014-09-02
- html 5有个很棒的属性,placeholder,但是在不支持html5的低版本的浏览器中,因此要人为的去实现placeholder属性,下面有个示例,感兴趣的朋友可以参考下2014-06-30
HTML 5 input placeholder 属性如何完美兼任ie
这篇文章主要介绍了HTML 5 input placeholder 属性完美兼任ie的方法,需要的朋友可以参考下2014-05-12- 浏览器引入了许多的HTML5 特性其中我最喜欢的一个就是为input元素引入了placeholder属性,placeholder属性显示引导性文字直到输入框获取输入焦点,当有了用户输入内容后引导2013-08-07
- 本文主要介绍了限制html文本框input只能输入数字和小数点的方法。具有很好的参考价值。下面跟着小编一起来看下吧2017-03-27
- 这篇文章主要介绍了如何使一个input文本框随其中内容长度变化而变化长度,实现原理很简单,大家看过之后就知道了2014-04-08
使用placeholder属性设置input文本框的提示信息
这篇文章主要介绍了使用placeholder属性设置input文本框的提示信息,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2020-02-19
最新评论