Maison > Questions et réponses > le corps du texte
P粉6800875502023-08-28 10:14:21
/* do not group these rules */ *::-webkit-input-placeholder { color: red; } *:-moz-placeholder { /* FF 4-18 */ color: red; opacity: 1; } *::-moz-placeholder { /* FF 19+ */ color: red; opacity: 1; } *:-ms-input-placeholder { /* IE 10+ */ color: red; } *::-ms-input-placeholder { /* Microsoft Edge */ color: red; } *::placeholder { /* modern browser */ color: red; }
<input placeholder="hello"/> <br /> <textarea placeholder="hello"></textarea>
Cela stylisera tous les input
和textarea
espaces réservés.
Important : Ne regroupez pas ces règles. Au lieu de cela, créez des règles distinctes pour chaque sélecteur (un sélecteur invalide dans un groupe invalide l'ensemble du groupe).
P粉7656846022023-08-28 09:38:19
Il existe trois implémentations différentes : pseudo-élément, pseudo-classe et aucune.
::-webkit-input-placeholder
. [référence]:-moz-placeholder
(a colon). [référence]::-moz-placeholder
, mais l'ancien sélecteur fonctionnera encore pendant un certain temps. [Référence] :-ms-input-placeholder
. [Référence] ::placeholder
[Ref]Internet Explorer 9 et versions antérieures ne prennent pas du tout en charge l'attribut placeholder
, tandis que Opera 12 et versions antérieures ne prennent en charge aucun sélecteur CSS d'espace réservé.
Les discussions sur les meilleures options de mise en œuvre se poursuivent. Notez que les pseudo-éléments se comportent comme de vrais éléments dans le shadow DOM. input
上的 padding
n'obtiendra pas la même couleur d'arrière-plan que le pseudo-élément.
Les agents utilisateurs doivent ignorer les règles avec des sélecteurs inconnus. Voir Sélecteur Niveau 3 :
Nous devons donc établir des règles distinctes pour chaque navigateur. Sinon, l'ensemble du groupe sera ignoré par tous les navigateurs.
::-webkit-input-placeholder { /* WebKit, Blink, Edge */ color: #909; } :-moz-placeholder { /* Mozilla Firefox 4 to 18 */ color: #909; opacity: 1; } ::-moz-placeholder { /* Mozilla Firefox 19+ */ color: #909; opacity: 1; } :-ms-input-placeholder { /* Internet Explorer 10-11 */ color: #909; } ::-ms-input-placeholder { /* Microsoft Edge */ color: #909; } ::placeholder { /* Most modern browsers support this now. */ color: #909; }
<input placeholder="Stack Snippets are awesome!">