Setați culoarea substituentului. Cum se schimbă culoarea textului indicativ într-un substituent folosind stiluri CSS? Ascunzând frumos substituentul

Acasă / Tehnologii
În mod obișnuit, atributul substituent de pe intrare și textarea este utilizat pentru a oferi un îndemn la acțiune în cadrul acelor elemente. În această notă voi descrie mai multe opțiuni pentru stilarea textului substituenților, precum și opțiuni pentru animarea acestora

Deci, culoarea textului substituentului nostru poate fi schimbată folosind, de exemplu, următorul set de reguli CSS:

::-webkit-input-placeholder ( culoare : #c0392b ;) ::-moz-placeholder ( culoare : #c0392b ;) /* Firefox 19+ */ :-moz-placeholder ( culoare : #c0392b ;) /* Firefox 18- */ :-ms-input-placeholder (culoare: #c0392b ;)

Lungimea codului pentru stilarea unei proprietăți atât de simple se datorează lipsei unui standard comun și, prin urmare, fiecare browser a implementat suport pentru stilul de substituent în felul său.

De asemenea, nu toate sunt acceptate proprietăți css. Iată o listă de proprietăți exact acceptate:

font (și aferente)
fundal (și înrudit)
culoare
spațierea cuvintelor
spațiere între litere
text-decor
vertical-align
text-transformare
înălțimea liniei
text-indentare
text-debordare
opacitate

De asemenea, se întâmplă că textul substituent „se extinde” dincolo de lățimea elementului de intrare sau textarea (un caz comun pentru dispozitive mobile). În același timp, este tăiat automat inestetic.

O proprietate CSS precum text-overflow: punctele de suspensie ne vor ajuta să remediem această problemă, care va adăuga o elipsă estetică în zona decupată a substituentului. În stiluri scriem astfel:

input [ substituent ] ( text-overflow : puncte suspensie ;) input ::-moz-placeholder ( text-overflow : puncte suspensive ;) input :-moz-placeholder ( text-overflow : puncte suspensive ;) input :-ms-input-placeholder ( text-overflow: puncte de suspensie ;)

Pentru a adăuga și mai multă estetică substituenților noștri, este posibil să adăugați efectul de a-l ascunde atunci când elementul corespunzător primește focalizare.

Câteva exemple de astfel de ascundere cu elemente de animație:

/* schimbare lină a transparenței substituentului când este focalizat */.input ::-webkit-input-placeholder ( opacitate : 1 ; tranziție : opacitate 0,3 s ease ;) .input ::-moz-placeholder ( opacitate : 1 ; tranziție : opacitate 0,3 s ease ;).input :-moz- substituent (opacitate: 1; tranziție: opacitate 0,3s ease;).input:-ms-input-placeholder (opacitate: 1; tranziție: opacitate 0,3s ease;).input (opacitate: 0; tranziție: opacitate 0,3s ease; ) .input :focus::-moz-placeholder ( opacitate : 0 ; tranziție : opacitate 0.3s ease ;).input :focus:-moz-placeholder ( opacitate : 0 ; tranziție : opacitate 0,3s ease ;).input :focus :-ms-input-placeholder ( opacitate : 0 ; tranziție : opacitate 0,3 s ușurință ;) /* mutați substituentul la dreapta când este focalizat */.input ::-webkit-input-placeholder ( text-indent : 0px ; tranziție : text-indent 0.3s ease ;) .input ::-moz-placeholder ( text-indent : 0px ; tranziție : text-indent 0.3s ease ;).input :-moz-placeholder ( text-indent : 0px ; tranziție : text-indent 0,3s ease ;).input :-ms-input-placeholder ( text-indent : 0px ; tranziție : text-indent 0,3s ease ;).intrare :focus::-webkit-input-placeholder( text-indent : 500px ; tranziție : text-indent 0.3s ease ;).input :focus::-moz-placeholder ( text-indent : 500px ; tranziție : text-indent 0.3s ease ;).input :focus:- moz-placeholder ( text-indent : 500px ; tranziție : text-indent 0.3s ease ;) .input :focus:-ms-input-placeholder ( text-indent : 500px ; tranziție : text-indent 0.3s ease ;) /* mutați substituentul în jos când este focalizat */.input ::-webkit-input-placeholder ( line-height : 20px ; tranziție : line-height 0,5s ease ;) .input ::-moz-placeholder ( line-height : 20px ; tranziție : line-height 0,5s ease ;).input :-moz-placeholder ( line-height : 20px ; tranziție : line-height 0,5s ease ;).input :-ms-input-placeholder ( line-height : 20px ; tranziție : line-height 0,5s ease ;).input :focus::-webkit-input-placeholder( line-height : 100px ; tranziție : line-height 0.5s ușurință ;).input :focus::-moz-placeholder ( line-height : 100px ; tranziție: line-height 0.5s ease ;).input :focus:- moz-placeholder ( line-height : 100px ; tranziție : line-height 0.5s ease ;).input :focus:-ms-input-placeholder ( line-height : 100px ; tranziție: line-height 0.5s ease ;)

Să terminăm aici.

În efortul de a reduce forma și de a reduce zgomotul vizual, designerii

Prost

Amenda

Stil: schimbați culoarea substituentului CSS

Schimbați stilul câmpului de introducere cu substituent CSS

Prost

Efect de substituent pentru

Atributul substituent funcționează numai pentru Şi