Heim  >  Artikel  >  Web-Frontend  >  HTML5里的placeholder属性

HTML5里的placeholder属性

WBOY
WBOYOriginal
2016-05-17 09:07:451921Durchsuche
       HTML5里新引入很多有趣的新特征;有些体现在HTML里,有些是JavaScript API,全部非常的有用。其中我最喜欢的一个特征就是文本框(INPUT)里的placeholder属性。placeholder属性能够让你在文本框里显示提示信息,一旦你在文本框里输入了什么信息,提示信息就会隐藏。你以前可能无数次看到这种效果,但那些大部分是用JavaScript里实现的,而现在,HTML5提供了原生支持,而且效果更好!

HTML5里的placeholder属性



HTML代码

复制代码

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

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

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

  1. function hasPlaceholderSupport() {
  2.         var input = document.createElement('input');
  3.         return ('placeholder' in input);
  4. }
复制代码

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

  1. /* mootools ftw! */
  2. var firstNameBox = $('first_name'),
  3.         message = firstNameBox.get('placeholder');
  4. firstNameBox.addEvents({
  5.         focus: function() {
  6.                 if(firstNameBox.value == message) { searchBox.value = ''; }
  7.         },
  8.         blur: function() {
  9.                 if(firstNameBox.value == '') { searchBox.value = message; }
  10.         }
  11. });
复制代码

用CSS美化placeholder

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

观看演示

CSS代码

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

  1. /* all */
  2. ::-webkit-input-placeholder { color:#f00; }
  3. ::-moz-placeholder { color:#f00; } /* firefox 19+ */
  4. :-ms-input-placeholder { color:#f00; } /* ie */
  5. input:-moz-placeholder { color:#f00; }

  6. /* individual: webkit */
  7. #field2::-webkit-input-placeholder { color:#00f; }
  8. #field3::-webkit-input-placeholder { color:#090; background:lightgreen; text-transform:uppercase; }
  9. #field4::-webkit-input-placeholder { font-style:italic; text-decoration:overline; letter-spacing:3px; color:#999; }

  10. /* individual: mozilla */
  11. #field2::-moz-placeholder { color:#00f; }
  12. #field3::-moz-placeholder { color:#090; background:lightgreen; text-transform:uppercase; }
  13. #field4::-moz-placeholder { font-style:italic; text-decoration:overline; letter-spacing:3px; color:#999; }
复制代码

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

via:http://www.webhek.com/html5-placeholder?rel=http://geek.csdn.net

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn