HTML5 placeholder屬性詳解

HTML5里新引入很多有趣的新特征;有些體現(xiàn)在HTML里,有些是JavaScript API,全部非常的有用。其中我最喜歡的一個特征就是文本框(INPUT)里的placeholder屬性。placeholder屬性能夠讓你在文本框里顯示提示信息,一旦你在文本框里輸入了什么信息,提示信息就會隱藏。你以前可能無數(shù)次看到這種效果,但那些大部分是用JavaScript里實現(xiàn)的,而現(xiàn)在,HTML5提供了原生支持,而且效果更好!
HTML代碼
<input type="text" name="first_name" placeholder="你的姓名..." />
你也看見了,需要做的只是在文本框的聲明標簽上加入placeholder屬性。完全不需要JavaScript來創(chuàng)造這種效果。
檢查瀏覽器是否支持Placeholder屬性
因為placeholder是一種新屬性,很有必要檢查一下你的瀏覽器是否支持它,比如IE6、IE8肯定是不支持的:
- function hasPlaceholderSupport() {
- var input = document.createElement('input');
- return ('placeholder' in input);
- }
如果用戶的瀏覽器不支持placeholder特征,你需要借助MooTools, Dojo, 或其它JavaScript工具來實現(xiàn)它:
- /* 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美化鼠標選擇的文字。在進一步研究時我發(fā)現(xiàn)了另外一個有趣的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以動畫方式顯示。 美化你的文本框都是些看起來很小的事情,但對于一些交互式的網(wǎng)站來說,成功的關鍵就在于細節(jié)?,F(xiàn)在IE10里也只支持placeholder了,相信越來越多的人會使用這種原生的placeholder效果。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。相關文章
- Placeholder是HTML5新增的另一個屬性,當input或者textarea設置了該屬性后,該值的內(nèi)容將作為灰字提示顯示在文本框中,當文本框獲得焦點時,提示文字消失2014-09-02
- html 5有個很棒的屬性,placeholder,但是在不支持html5的低版本的瀏覽器中,因此要人為的去實現(xiàn)placeholder屬性,下面有個示例,感興趣的朋友可以參考下2014-06-30
HTML 5 input placeholder 屬性如何完美兼任ie
這篇文章主要介紹了HTML 5 input placeholder 屬性完美兼任ie的方法,需要的朋友可以參考下2014-05-12- 瀏覽器引入了許多的HTML5 特性其中我最喜歡的一個就是為input元素引入了placeholder屬性,placeholder屬性顯示引導性文字直到輸入框獲取輸入焦點,當有了用戶輸入內(nèi)容后引導2013-08-07
限制html文本框input只能輸入數(shù)字和小數(shù)點
本文主要介紹了限制html文本框input只能輸入數(shù)字和小數(shù)點的方法。具有很好的參考價值。下面跟著小編一起來看下吧2017-03-27- 這篇文章主要介紹了如何使一個input文本框隨其中內(nèi)容長度變化而變化長度,實現(xiàn)原理很簡單,大家看過之后就知道了2014-04-08
使用placeholder屬性設置input文本框的提示信息
這篇文章主要介紹了使用placeholder屬性設置input文本框的提示信息,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2020-02-19