Кратко
СкопированоПсевдоэлемент :
используется для стилизации текста-подсказки (плейсхолдера) в полях ввода <input>
и <textarea>
.
Пример
Скопировано<input class="form-input" type="email" placeholder="Например: mygre@ema.il">
<input class="form-input" type="email" placeholder="Например: mygre@ema.il">
.form-input::placeholder { color: gray;}
.form-input::placeholder { color: gray; }
Как понять
СкопированоЭлементам <input>
и <textarea>
можно задавать атрибут placeholder
. Текст, содержащийся в этом атрибуте, будет отображаться внутри поля ввода, пока пользователь ничего не ввёл. Этот текст можно стилизовать, используя псевдоэлемент :
. Стили для введённого текста и текста-подсказки в общем случае должны различаться.
Как пишется
СкопированоДва двоеточия и ключевое слово placeholder
.
Стиль применится ко всем подсказкам на странице:
::placeholder { color: gray;}
::placeholder { color: gray; }
Стиль применится только к подсказкам у полей ввода с классом email
:
.email-input::placeholder { color: darkblue;}
.email-input::placeholder { color: darkblue; }
Подсказки
Скопировано💡 Для стилизации подсказки можно использовать только следующие свойства:
- все шрифтовые свойства, начинающиеся с
font
(например,font
или- size font
);- style - все свойства для работы с фоном, начинающиеся с
background
(например,- background
или- color background
);- size - свойство
color
; - свойства
word
,- spacing letter
,- spacing text
,- decoration text
и- transform line
;- height - свойства
text
, группу свойств- shadow text
и- decoration vertical
.- align
На практике
Скопированосоветует Скопировано
🛠 Подсказка-плейсхолдер не должна выступать как замена тегу <label>
. Основное назначение плейсхолдера — дать подсказку к правильному заполнению поля. Дизайнеры зачастую любят экономить место в формах и не рисуют лейблы у полей, заменяя их подсказками. Это не лучшая практика, поэтому если вам попадётся такой макет, обговорите с дизайнером возможность добавления лейблов.
🛠 Желательно стилизовать подсказку таким образом, чтобы визуально она отличалась от введённого текста. Как правило, её делают полупрозрачной, либо просто светлее вводимого текста.