Как стилизовать текст заполнителя элемента формы с помощью псевдоэлемента :: placeholder
Псевдоэлемент :: placeholder (или псевдокласс, в некоторых случаях, в зависимости от реализации браузера) позволяет вам стилизовать текст заполнителя элемента формы (например, формы поиска). Как и текст, заданный с атрибутом placeholder:
Вы можете стилизовать этот текст в большинстве браузеров с помощью небольшого количества селекторов с префиксом поставщика браузера:
Пример
Разница между : placeholder-show и :: placeholder
: placeholder предназначен для выбора самого входа, когда отображается текст заполнителя. В отличие от :: placeholder, который стилизует текст заполнителя.
Вот диаграмма:
Мы нашли это очень запутанным, поскольку в спецификациях есть только : placeholder-show и нет :: placeholder и :placeholder-shows может по-прежнему влиять на стиль текста-заполнителя, поскольку это родительский элемент (например, размер шрифта).
Tab Atkins очистил его для нас в электронной почте:
: placeholder-shown, являющийся псевдо-классом, должен выбрать существующий элемент – он выбирает вход, когда вы находитесь в состоянии placeholder-showing. Псевдоэлемент :: placeholder окружает фактический текст заполнителя.
Элемент или класс?
Эта функциональность не стандартизирована. Это означает, что у каждого браузера свое мнение о том, как он должен работать.
Firefox первоначально реализовал это как псевдо-класс, но изменил его по целому ряду причин. Короче говоря, вы не можете сделать так много с псевдо-классом.
Например, если вы хотите изменить цвет текста при фокусировке ввода. Вы бы использовали селектор типа input: focus :: placeholder, который вы не смогли бы сделать с псевдоклассом (они не складываются одинаково).
IE10 поддерживает это как псевдо-класс, а не элемент. Все остальные реализовали псевдоэ-лемент.
Цвет заставки Firefox
Вы можете заметить, как в Firefox цвет заполнителя выглядит померкшим по сравнению с другими браузерами. На изображении ниже Firefox 43 отображается слева, а Chrome 47 показан справа:
Версия Chrome – это стиль, который мы хотели бы видеть повсюду.
Это связано с тем, что по умолчанию все заполнители в Firefox имеют значение непрозрачности, применяемое к ним, поэтому, чтобы исправить это, нам нужно сбросить это значение:
Вы можете увидеть больше, протестировав эту демонстрацию в Firefox.
Поддерживаемые стили
Псевдо-элемент поддерживает стилизацию этих свойств:
- свойства шрифта
- цвет
- фоновые свойства
- слово-интервал
- межбуквенное расстояние
- текст-отделка
- вертикальные выравнивания
- текст-преобразование
- высота линии
- отступ текста
- помутнение
Другие источники
- Документы MDN.
- Документы IE.
- Полная статья о блоге Treehouse.
- Обоснование псевдо-элемента.
Поддержка браузера
Мы говорим, что он поддерживается здесь, даже если добавлен префикс.
Firefox поддерживает псевдокласс до версии 18. Версия 19+ поддерживает псевдо-элемент, а не класс.
Источник: https://css-tricks.com/almanac/selectors/p/placeholder/
Рубрики
Фильтр по типу
Рубрики
- Авто
- Адаптивные
- Бизнес
- Детские и образование
- Дом и семья
- Женские и шопинг
- Здоровье и медицина
- Игры и развлечения
- Интерьер
- Искусство и творчество
- Красота и мода
- Кулинария
- Блог и люди
- Минимализм
- Музыка
- Недвижимость и стройка
- Новостные
- Портал
- Природа и животные
- Спорт
- Технологии
- Туризм и путешествия
- Универсальные
- Финансы
Лучшие шаблоны для Wordpress
Лучшие комментарии
Последние темы и подборки
- Подборка лучших тем WordPress для сайта детского лагеря
- 6 лучших конструкторов тем WordPress на 2025 год (в сравнении)
- Многоцелевая тема Flash – скачать бесплатно и на русском языке
- Real Estate Manager – бесплатная тема для агента по недвижимости
- Лучшие темы WordPress для сайта кейтеринга
- Лучшие темы WordPress на тематику религия
- 30 примеров известных сайтов на WordPress для вдохновения в 2025 году
- Pet Accessory Store – бесплатная тема WordPress для корма домашним животным
- Expert Handyman бесплатная тема Вордпресс для мастеров
- Бесплатная тема WordPress для потрясающих портфолио
Лучшие комментарии