<input id="username" name="username" Eine detaillierte Einführung in das HTML5-Platzhalterattribut="请输入用户名" type="text">
<textarea>
mehrzeilige Textfelder und type
deren Attributwert Text, Passwort, Suche, Telefonnummer, URL oder E-Mail usw. ist. <input>
<p>Benutzerdefinierter StilWenn Sie den Standard-Rendering-Stil des Platzhalters ändern möchten, sollten Sie den <p> Pseudoelement-Selektor verwenden, aber den gibt es Derzeit keine Browserunterstützung, daher kann es nur separat entsprechend den unterschiedlichen Implementierungsmethoden verschiedener Browser definiert werden: ::Eine detaillierte Einführung in das HTML5-Platzhalterattribut
::-webkit-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { /* Chrome/Safari/Opera */ color: green;}::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { /* Firefox 19+ */ color: green;}:-ms-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { /* IE 10+ 注意这里只有一个冒号 */ color: green;}
::-webkit-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut,::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: green;}
:-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { /* Firefox 4 - 18 */ color: green;}
:-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut
-Deckkraftstil hinzugefügt, der bei Bedarf überschrieben werden kann, andernfalls ist der Text halbtransparent: opacity: 0.54
::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: green; opacity: 1;}
:first-child
p:first-child { font-size: 16px;}
p.first-child { font-size: 16px;}
<p>
Das Pseudoelement kann als Hinzufügen eines virtuellen Elements verstanden werden. Beispielsweise kann das <p>-Pseudoelement wie der folgende Pseudocode verstanden werden: p:before
<before>p:before</before><p>paragraph</p>
<p>
als zwei verschiedene Elemente verstanden werden. Wenn Sie verwirrt sind, spielt das keine Rolle. Weitere Informationen zu Pseudo-Elementen und Pseudo-Klassen finden Sie unter Pseudo-Klassen – MDN und Pseudo-Elemente. CSS |. MDNp:before
Über Pseudoklassen-Probleme, die durch Selektoren verursacht werdenWeil der IE-Browser den Pseudoklassen-<p>-Selektor verwendet, um den Stil des Platzhalters zu definieren Wenn es ein anderes Texteingabefeld gibt, überschreiben Stilregeln mit höherer Selektorspezifität diesen Stil: :-ms-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut
input:-ms-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { /* 0, 0, 1, 1 */ color: green;}#username { /* 0, 1, 0, 0 */ color: blue;}
!important
input::-webkit-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { /* 0, 0, 0, 2 */ color: green;}#username { /* 0, 1, 0, 0 */ color: blue;}
:focus
:focus::-webkit-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: transparent;}
Eine detaillierte Einführung in das HTML5-Platzhalterattribut
$('input').attr('Eine detaillierte Einführung in das HTML5-Platzhalterattribut', 'Please enter your name');
window.getComputedStyle()
window.getComputedStyle(document.getElementById('username'), '::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut').getPropertyValue('color'); // "rgb(0, 255, 0)"
.style-1::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: green;}.style-2::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: red;}
class
属性来实现修改样式的目的:$('input').addClass('style-2').removeClass('style-1');
<input>
元素的 Eine detaillierte Einführung in das HTML5-Platzhalterattribut
属性,可以引入 Modernizr 库来判断:if (!Modernizr.input.Eine detaillierte Einführung in das HTML5-Platzhalterattribut) { // 做点什么事}
<input>
元素对象,并判断该元素对象是否具有 Eine detaillierte Einführung in das HTML5-Platzhalterattribut
属性:'Eine detaillierte Einführung in das HTML5-Platzhalterattribut' in document.createElement('input')
<textarea>
元素也是一样:'Eine detaillierte Einführung in das HTML5-Platzhalterattribut' in document.createElement('textarea')
({}).toString.call(window.operamini) === '[object OperaMini]'
if (!('Eine detaillierte Einführung in das HTML5-Platzhalterattribut' in document.createElement('input')) || ({}).toString.call(window.operamini) === '[object OperaMini]') { // 做点什么事}
value
值设置为 Eine detaillierte Einführung in das HTML5-Platzhalterattribut
的值来模拟显示 Eine detaillierte Einführung in das HTML5-Platzhalterattribut 的状态。再添加上事件处理程序,当文本输入框获取焦点时如果 value
的值为 Eine detaillierte Einführung in das HTML5-Platzhalterattribut 则清空文本输入框;当文本输入框失去焦点时如果 value
值为空则将 Eine detaillierte Einführung in das HTML5-Platzhalterattribut 的内容赋给它,同时当 Eine detaillierte Einführung in das HTML5-Platzhalterattribut 显示的时候应该给文本输入框添加一个 class="Eine detaillierte Einführung in das HTML5-Platzhalterattribut"
用来设置样式以区别是显示的 Eine detaillierte Einführung in das HTML5-Platzhalterattribut 和还是显示的普通 value:// 做点什么事$('input[Eine detaillierte Einführung in das HTML5-Platzhalterattribut]').on('focus', function() { var $this = $(this); if (this.value === $this.attr('Eine detaillierte Einführung in das HTML5-Platzhalterattribut') && $this.hasClass('Eine detaillierte Einführung in das HTML5-Platzhalterattribut')) { this.value = ''; $this.removeClass('Eine detaillierte Einführung in das HTML5-Platzhalterattribut'); }}).on('blur', function() { var $this = $(this); if (this.value === '') { $this.addClass('Eine detaillierte Einführung in das HTML5-Platzhalterattribut'); this.value = $this.attr('Eine detaillierte Einführung in das HTML5-Platzhalterattribut'); }});
value
值会显示为圆点之类的字符,呈现几个莫名其妙的圆点来作为 Eine detaillierte Einführung in das HTML5-Platzhalterattribut 提示恐怕不妥,因此需要特殊对待一下,将密码输入框拷贝一份出来然后修改其 type
属性为 'text' 来替代显示 Eine detaillierte Einführung in das HTML5-Platzhalterattribut,并把原本的密码输入框隐藏:$('input[Eine detaillierte Einführung in das HTML5-Platzhalterattribut]').on('blur', function() { var $this = $(this); var $replacement; if (this.value === '') { // 失去焦点时值为空则显示 Eine detaillierte Einführung in das HTML5-Platzhalterattribut if (this.type === 'password') { $replacement = $this.clone().attr('type', 'text'); $replacement.data('Eine detaillierte Einführung in das HTML5-Platzhalterattribut-password', $this); // 替代显示的文本输入框获取焦点时将它删掉,并且重新显示原来的密码输入框 $replacement.on('focus', function() { $(this).data('Eine detaillierte Einführung in das HTML5-Platzhalterattribut-password').show().focus(); $(this).remove(); }); $this.after($replacement).hide(); $this = $replacement; } $this.addClass('Eine detaillierte Einführung in das HTML5-Platzhalterattribut'); $this[0].value = $this.attr('Eine detaillierte Einführung in das HTML5-Platzhalterattribut'); }});
try { $replacement = $this.clone().prop('type', 'text'); // 使用 .prop() 方法在 IE 8 下会报错} catch(e) { $replacement = $('<input>').attr({ 'type': 'text', 'class': this.className // 还可以赋予 id, name 等属性 });}
value
值设为空,提交之后再恢复成显示 Eine detaillierte Einführung in das HTML5-Platzhalterattribut 的状态:$(document).on('submit', 'form', function() { var $input = $('.Eine detaillierte Einführung in das HTML5-Platzhalterattribut', this); $input.each(function() { this.value = ''; }); setTimeout(function() { $input.each(function() { this.value = $(this).attr('Eine detaillierte Einführung in das HTML5-Platzhalterattribut'); }); }, 10);});
beforeunload
事件来处理:$(window).on('beforeunload', function() { $('.Eine detaillierte Einführung in das HTML5-Platzhalterattribut').each(function() { this.value = ''; });});
input::-webkit-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut, textarea::-webkit-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: #999;}input::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut, textarea::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: #999; opacity: 1;}input:-ms-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut, textarea:-ms-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: #999;}.Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: #999;}input:focus::-webkit-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut, textarea:focus::-webkit-input-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: transparent;}input:focus::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut, textarea:focus::-moz-Eine detaillierte Einführung in das HTML5-Platzhalterattribut { color: transparent;}
Das obige ist der detaillierte Inhalt vonEine detaillierte Einführung in das HTML5-Platzhalterattribut. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!