<input id="username" name="username" Une introduction détaillée à lattribut HTML5 Placeholder="请输入用户名" type="text">
<textarea>
zones de texte multilignes et type
dont la valeur d'attribut est texte, mot de passe, recherche, tel, url ou email, etc. <input>
<p>Style personnaliséSi vous souhaitez modifier le style de rendu par défaut de l'espace réservé, vous devez utiliser le sélecteur de pseudo-éléments <p>, mais il existe actuellement aucun support de navigateur , il ne peut donc être défini que séparément selon différentes méthodes d'implémentation de différents navigateurs : ::Une introduction détaillée à lattribut HTML5 Placeholder
::-webkit-input-Une introduction détaillée à lattribut HTML5 Placeholder { /* Chrome/Safari/Opera */ color: green;}::-moz-Une introduction détaillée à lattribut HTML5 Placeholder { /* Firefox 19+ */ color: green;}:-ms-input-Une introduction détaillée à lattribut HTML5 Placeholder { /* IE 10+ 注意这里只有一个冒号 */ color: green;}
::-webkit-input-Une introduction détaillée à lattribut HTML5 Placeholder,::-moz-Une introduction détaillée à lattribut HTML5 Placeholder { color: green;}
:-moz-Une introduction détaillée à lattribut HTML5 Placeholder { /* Firefox 4 - 18 */ color: green;}
:-moz-Une introduction détaillée à lattribut HTML5 Placeholder
par défaut, qui peut être remplacé si nécessaire, sinon le texte est semi-transparent : opacity: 0.54
::-moz-Une introduction détaillée à lattribut HTML5 Placeholder { color: green; opacity: 1;}
:first-child
p:first-child { font-size: 16px;}
p.first-child { font-size: 16px;}
<p>
Le pseudo élément peut être compris comme l'ajout d'un élément virtuel. Par exemple, le pseudo-élément <p> peut être compris comme le pseudocode suivant : p:before
<before>p:before</before><p>paragraph</p>
<p>
peuvent être compris comme deux éléments différents. Si vous êtes confus, cela n'a pas d'importance. Après tout, ce n'est pas le sujet de cet article. Pour plus d'informations sur les pseudo-éléments et les pseudo-classes, veuillez vous référer aux pseudo-classes - CSS MDN et pseudo-éléments -. CSS | MDNp:before
À propos des pseudo-classes Problèmes causés par les sélecteursParce que le navigateur IE utilise le sélecteur de pseudo-classe <p> pour définir le style de l'espace réservé. appliqué à la zone de saisie de texte. S'il existe une autre zone de saisie de texte, les règles de style avec une spécificité de sélecteur plus élevée remplaceront ce style. Reportez-vous au code suivant : :-ms-input-Une introduction détaillée à lattribut HTML5 Placeholder
input:-ms-input-Une introduction détaillée à lattribut HTML5 Placeholder { /* 0, 0, 1, 1 */ color: green;}#username { /* 0, 1, 0, 0 */ color: blue;}
!important
input::-webkit-input-Une introduction détaillée à lattribut HTML5 Placeholder { /* 0, 0, 0, 2 */ color: green;}#username { /* 0, 1, 0, 0 */ color: blue;}
:focus
:focus::-webkit-input-Une introduction détaillée à lattribut HTML5 Placeholder { color: transparent;}
Une introduction détaillée à lattribut HTML5 Placeholder
$('input').attr('Une introduction détaillée à lattribut HTML5 Placeholder', 'Please enter your name');
window.getComputedStyle()
window.getComputedStyle(document.getElementById('username'), '::-moz-Une introduction détaillée à lattribut HTML5 Placeholder').getPropertyValue('color'); // "rgb(0, 255, 0)"
.style-1::-moz-Une introduction détaillée à lattribut HTML5 Placeholder { color: green;}.style-2::-moz-Une introduction détaillée à lattribut HTML5 Placeholder { color: red;}
class
属性来实现修改样式的目的:$('input').addClass('style-2').removeClass('style-1');
<input>
元素的 Une introduction détaillée à lattribut HTML5 Placeholder
属性,可以引入 Modernizr 库来判断:if (!Modernizr.input.Une introduction détaillée à lattribut HTML5 Placeholder) { // 做点什么事}
<input>
元素对象,并判断该元素对象是否具有 Une introduction détaillée à lattribut HTML5 Placeholder
属性:'Une introduction détaillée à lattribut HTML5 Placeholder' in document.createElement('input')
<textarea>
元素也是一样:'Une introduction détaillée à lattribut HTML5 Placeholder' in document.createElement('textarea')
({}).toString.call(window.operamini) === '[object OperaMini]'
if (!('Une introduction détaillée à lattribut HTML5 Placeholder' in document.createElement('input')) || ({}).toString.call(window.operamini) === '[object OperaMini]') { // 做点什么事}
value
值设置为 Une introduction détaillée à lattribut HTML5 Placeholder
的值来模拟显示 Une introduction détaillée à lattribut HTML5 Placeholder 的状态。再添加上事件处理程序,当文本输入框获取焦点时如果 value
的值为 Une introduction détaillée à lattribut HTML5 Placeholder 则清空文本输入框;当文本输入框失去焦点时如果 value
值为空则将 Une introduction détaillée à lattribut HTML5 Placeholder 的内容赋给它,同时当 Une introduction détaillée à lattribut HTML5 Placeholder 显示的时候应该给文本输入框添加一个 class="Une introduction détaillée à lattribut HTML5 Placeholder"
用来设置样式以区别是显示的 Une introduction détaillée à lattribut HTML5 Placeholder 和还是显示的普通 value:// 做点什么事$('input[Une introduction détaillée à lattribut HTML5 Placeholder]').on('focus', function() { var $this = $(this); if (this.value === $this.attr('Une introduction détaillée à lattribut HTML5 Placeholder') && $this.hasClass('Une introduction détaillée à lattribut HTML5 Placeholder')) { this.value = ''; $this.removeClass('Une introduction détaillée à lattribut HTML5 Placeholder'); }}).on('blur', function() { var $this = $(this); if (this.value === '') { $this.addClass('Une introduction détaillée à lattribut HTML5 Placeholder'); this.value = $this.attr('Une introduction détaillée à lattribut HTML5 Placeholder'); }});
value
值会显示为圆点之类的字符,呈现几个莫名其妙的圆点来作为 Une introduction détaillée à lattribut HTML5 Placeholder 提示恐怕不妥,因此需要特殊对待一下,将密码输入框拷贝一份出来然后修改其 type
属性为 'text' 来替代显示 Une introduction détaillée à lattribut HTML5 Placeholder,并把原本的密码输入框隐藏:$('input[Une introduction détaillée à lattribut HTML5 Placeholder]').on('blur', function() { var $this = $(this); var $replacement; if (this.value === '') { // 失去焦点时值为空则显示 Une introduction détaillée à lattribut HTML5 Placeholder if (this.type === 'password') { $replacement = $this.clone().attr('type', 'text'); $replacement.data('Une introduction détaillée à lattribut HTML5 Placeholder-password', $this); // 替代显示的文本输入框获取焦点时将它删掉,并且重新显示原来的密码输入框 $replacement.on('focus', function() { $(this).data('Une introduction détaillée à lattribut HTML5 Placeholder-password').show().focus(); $(this).remove(); }); $this.after($replacement).hide(); $this = $replacement; } $this.addClass('Une introduction détaillée à lattribut HTML5 Placeholder'); $this[0].value = $this.attr('Une introduction détaillée à lattribut HTML5 Placeholder'); }});
try { $replacement = $this.clone().prop('type', 'text'); // 使用 .prop() 方法在 IE 8 下会报错} catch(e) { $replacement = $('<input>').attr({ 'type': 'text', 'class': this.className // 还可以赋予 id, name 等属性 });}
value
值设为空,提交之后再恢复成显示 Une introduction détaillée à lattribut HTML5 Placeholder 的状态:$(document).on('submit', 'form', function() { var $input = $('.Une introduction détaillée à lattribut HTML5 Placeholder', this); $input.each(function() { this.value = ''; }); setTimeout(function() { $input.each(function() { this.value = $(this).attr('Une introduction détaillée à lattribut HTML5 Placeholder'); }); }, 10);});
beforeunload
事件来处理:$(window).on('beforeunload', function() { $('.Une introduction détaillée à lattribut HTML5 Placeholder').each(function() { this.value = ''; });});
input::-webkit-input-Une introduction détaillée à lattribut HTML5 Placeholder, textarea::-webkit-input-Une introduction détaillée à lattribut HTML5 Placeholder { color: #999;}input::-moz-Une introduction détaillée à lattribut HTML5 Placeholder, textarea::-moz-Une introduction détaillée à lattribut HTML5 Placeholder { color: #999; opacity: 1;}input:-ms-input-Une introduction détaillée à lattribut HTML5 Placeholder, textarea:-ms-input-Une introduction détaillée à lattribut HTML5 Placeholder { color: #999;}.Une introduction détaillée à lattribut HTML5 Placeholder { color: #999;}input:focus::-webkit-input-Une introduction détaillée à lattribut HTML5 Placeholder, textarea:focus::-webkit-input-Une introduction détaillée à lattribut HTML5 Placeholder { color: transparent;}input:focus::-moz-Une introduction détaillée à lattribut HTML5 Placeholder, textarea:focus::-moz-Une introduction détaillée à lattribut HTML5 Placeholder { color: transparent;}
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!