HTML5里的placeholder属性使用实例和美化显示效果的方法
2014-04-23 17:15
756 查看
placeholder属性能够让你在文本框里显示提示信息,一旦你在文本框里输入了什么信息,提示信息就会隐藏。你以前可能无数次看到这种效果,但那些大部分是用JavaScript里实现的,而现在,HTML5提供了原生支持,而且效果更好!
HTML代码
你也看见了,需要做的只是在文本框的声明标签上加入placeholder属性。完全不需要JavaScript来创造这种效果。
检查浏览器是否支持Placeholder属性
因为placeholder是一种新属性,很有必要检查一下你的浏览器是否支持它,比如IE6、IE8肯定是不支持的:
如果用户的浏览器不支持placeholder特征,你需要借助MooTools, Dojo, 或其它JavaScript工具来实现它:
用CSS美化placeholder
在进一步研究时我发现了另外一个有趣的CSS功能:CSS美化INPUT placeholder效果。下面让我来用简单的CSS代码美化文本框里的placeholder文字。
CSS代码
火狐浏览器里的用法和谷歌浏览器里不太一样。它们的名称都很好理解:
你可以控制placeholder文字的字体、颜色和风格。你甚至可以将文本框的placeholder以动画方式显示。 美化你的文本框都是些看起来很小的事情,但对于一些交互式的网站来说,成功的关键就在于细节。现在IE10里也只支持placeholder了,相信越来越多的人会使用这种原生的placeholder效果。
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效果。
相关文章推荐
- jQuery中使用data()方法读取HTML5自定义属性data-*实例
- 实例讲解使用HTML5 Canvas绘制阴影效果的方法
- jQuery中使用data()方法读取HTML5自定义属性data-*实例
- jQuery中使用data()方法读取HTML5自定义属性data-*实例
- jQuery中使用data()方法读取HTML5自定义属性data-*实例
- jQuery中使用data()方法读取HTML5自定义属性data-*实例
- html5的自定义data-*属性和jquery的data()方法的使用示例
- vue中的计算属性的使用和vue实例的方法示例
- (转)html5 Placeholder属性兼容IE6、7方法
- HTML5 3d可以使用的方法和属性
- UITableView 系列一 :基本使用方法 (显示,删除,添加图片,添加样式等) (实例)
- HTML5表单的基本属性和使用方法
- UITableView 系列一 :基本使用方法 (显示,删除,添加图片,添加样式等) (实例)
- extjs中第一次访问有效,第二次访问出现部分组件无法显示的,动态改变组件的label值的方法,ExtJs中组件最好少使用ID属性(推荐更多使用Name属性)
- html5学习canvas基本使用:div在js前面;localStorage存储根据浏览器在不同的位置;应用程序缓存;placeholder 属性提供一种提示(hint),描述输入域所期待的值。
- html5自定义属性data详解及使用方法
- HTML5中的Scoped属性使用实例
- HTML5基础04----HTML5属性使用方法
- Vue1.0学习总结(3)———vue1.0的生命周期、vue计算属性computed的使用、vue实例(vm)上方法总结、vue结合动画使用
- html5的自定义data-*属性和jquery的data()方法的使用