Оформлення placeholder css. Додаємо CSS стиль для placeholder

Плейсхолдер – елемент поля введення, у якому можна розмістити підказку. Коли користувач починає вводити дані, допоміжний текст зникає, щоб не заважати. Кожен браузер має свою думку щодо того, як слід відображати цей елемент, і часом дефолтні стилі ламають весь дизайн. Щоб керувати ними, потрібно скористатися спеціальним правилом CSS placeholder.

Де знаходиться плейсхолдер?

Проблема в тому, що підказка поля введення надійно захована в тіньовому DOM, і добратися до неї не так просто. Для цього використовується спеціальний нестандартний псевдоелемент CSS::placeholder. З його допомогою можна керувати властивостями підказки.

You will be interested:

Стилізація placeholder на CSS виглядає так:

input::placeholder ( color: red; opacity: 1; font-style: italic; )

Підтримка браузерами

Псевдоелемент CSS placeholder добре обробляється всіма сучасними браузерами, а для підтримки старих оглядачів можна скористатися префіксами:

  • ::-webkit-input-placeholder – для webkit-браузерів (Safari, Chrome, Opera);
  • ::-moz-placeholder – для браузерів Firefox вище 19 версії;
  • :-moz-placeholder – для старих Firefox;
  • :-ms-input-placeholder - для Internet Explorerвище 10 версії.

Як видно, старі браузери Mozilla, а також IE вважають placeholder CSS-псевдокласом, а не псевдоелементом. Не будемо з ними сперечатися, просто зважимо на цей аспект при стилізації поля введення.

Можливості стилізації

Для псевдоелемента placeholder в CSS можна встановити наступні параметри:

  • фон - група background-властивостей. Фон блоку підказки поширюється по всьому полі введення. Можна задати як колір (background-color), а й зображення (background-image).
  • колір тексту – color;
  • прозорість – opacity;
  • підкреслення, надкреслення або закреслення – text-decoration;
  • регістр – text-transform;
  • внутрішні відступи - padding. Підтримується не всіма браузерами. Як для малих елементів, верхній та нижній відступи ігноруються.
  • відображення шрифту - властивості групи font, line-height та різноманітні відступи (text-indent, letter-spacing, word-spacing);
  • вертикальне вирівнювання у рядку - vertical-align;
  • обрізка тексту при переповненні контейнера – text-overflow.

Input1::placeholder ( background-image: linear-gradient(lime, blue); color: white; ) .input2::placeholder ( text-decoration: line-through; ::placeholder ( font-size: 16px; letter-spacing: 10px; ) .input4::placeholder ( background: brown; color: white; text-overflow: ellipsis; )

У фокусі

За замовчуванням підказка зникає з поля введення лише в тому випадку, якщо введено хоча б один символ. Але псевдоелемент CSS placeholder дозволяє реалізувати зникнення відразу при фокусуванні на полі. Для цього необхідно поєднати його із псевдокласом: focus.

input:focus::placeholder ( color: transparent; )

У деяких браузерах можна анімувати зміну ряду властивостей плейсхолдера за допомогою інструкції transition.

input::placeholder ( color: black; transition: color 1s; ) input:focus::placeholder ( color: white; )

У браузері Google Chromeколір підказки при фокусуванні на такому полі плавно змінюватиметься протягом однієї секунди.

Placeholders, які швиденько вирізані з тексту елементів всередині, може бути ніби в стилі. Fortunately we"ve sourced a short but ефективні CSS solution до style your input"s placeholder текст будь-якого кольору і небезпечності ви. Read on for the code.

Changing placeholder text color

Let"s start with a simple input and some placeholder text, for this example we"ll use the word "search" but you can use anything you want. The basic HTML is below:

HTML


Input (and textarea) placeholder text defaults до світлого кольору, як, якщо можна змінити те, що з кількома лініями CSS. Тут ми можемо завантажити текст, використовуючи HTML-колір name, але будь-який колір методу виходу (HEX, RGB, HSL).

CSS
::-webkit-input-placeholder ( /* Chrome */ color: red; ) :-ms-input-placeholder ( /* IE 10+ */ color: red; ) ::-moz-placeholder ( /* Firefox 19 + */ color: red; opacity: 1; ) :-moz-placeholder ( /* Firefox 4 - 18 */ color: red; opacity: 1; )

Очевидно, що це важливо, щоб включати різні повноваження fixs in order to support as browsers as possible.

Changing placeholder focus text color

Правильно, ми успішно змінювали кольори місцезнаходження тексту на чорний, але це буде добре, якщо миттєво завантажені, коли ваші кнопки всередині нашого повідомлення. on focus.

CSS
input (outline: none; padding: 12px; border-radius: 3px; border: 1px solid black;) ::-webkit-input-placeholder ( /* Chrome */ color: red; transition: opacity 250ms ease-in-out ; ) :focus::-webkit-input-placeholder ( opacity: 0.5; ) :-ms-input-placeholder ( /* IE 10+ */ color: red; transition: opacity 250ms ease-in-out; ) :focus :-ms-input-placeholder ( opacity: 0.5; ) ::-moz-placeholder ( /* Firefox 19+ */ color: red; opacity: 1; transition: opacity 250ms ease-in-out; ) :focus:: -moz-placeholder ( opacity: 0.5; ) :-moz-placeholder ( /* Firefox 4 - 18 */ color: red; opacity: 1; transition: opacity 250ms ease-in-out; ) :фокус:-moz-placeholder ( opacity: 0.5; )

У тексті вище ми бачимо кілька основних стилів на вхіді йогоself, і посилаються на перехід на оpacity, щоб зробити життєвий добрий nicer.

Плейсхолдер – елемент поля введення, у якому можна розмістити підказку. Коли користувач починає вводити дані, допоміжний текст зникає, щоб не заважати. Кожен браузер має свою думку щодо того, як слід відображати цей елемент, і часом дефолтні стилі ламають весь дизайн. Щоб керувати ними, потрібно скористатися спеціальним правилом CSS placeholder.

Де знаходиться плейсхолдер?

Проблема в тому, що підказка поля введення надійно захована в тіньовому DOM, і добратися до неї не так просто. Для цього використовується особливий нестандартний ::placeholder. З його допомогою можна керувати властивостями підказки.

Стилізація placeholder на CSS виглядає так:

Input::placeholder ( color: red; opacity: 1; font-style: italic; )

Підтримка браузерами

Псевдоелемент CSS placeholder добре обробляється всіма сучасними браузерами, а для підтримки старих оглядачів можна скористатися префіксами:

  • ::-webkit-input-placeholder – для webkit-браузерів (Safari, Chrome, Opera);
  • ::-moz-placeholder – для браузерів Firefox вище 19 версії;
  • :-moz-placeholder – для старих Firefox;
  • :-ms-input-placeholder – для Internet Explorer вище 10 версії.

Як видно, старі браузери Mozilla, а також IE вважають placeholder CSS-псевдокласом, а не псевдоелементом. Не будемо з ними сперечатися, просто зважимо на цей аспект при стилізації поля введення.

Можливості стилізації

Для псевдоелемента placeholder в CSS можна встановити такі параметри:

  • фон - група блоку підказки поширюється по всьому полі введення. Можна задати як колір (background-color), а й зображення (background-image).
  • колір тексту – color;
  • прозорість – opacity;
  • підкреслення, надкреслення або закреслення – text-decoration;
  • регістр – text-transform;
  • внутрішні відступи - padding. Підтримується не всіма браузерами. Як для малих елементів, верхній та нижній відступи ігноруються.
  • відображення шрифту - властивості групи font, line-height та різноманітні відступи (text-indent, letter-spacing, word-spacing);
  • вертикальне вирівнювання у рядку - vertical-align;
  • обрізка тексту при переповненні контейнера – text-overflow.
.input1::placeholder ( background-image: linear-gradient(lime, blue); color: white; ) .input2::placeholder ( text-decoration: line-through; color: purple; font-weight: bold; ) . input3::placeholder ( font-size: 16px; letter-spacing: 10px; ) .input4::placeholder ( background: brown; color: white; text-overflow: ellipsis; )

У фокусі

За замовчуванням підказка зникає з поля введення лише в тому випадку, якщо введено хоча б один символ. Але placeholder дозволяє реалізувати зникнення відразу при фокусуванні на полі. Для цього необхідно поєднати його із псевдокласом: focus.

Input:focus::placeholder ( color: transparent; )

У деяких браузерах можна анімувати зміну ряду властивостей плейсхолдера за допомогою інструкції transition.

Input::placeholder ( color: black; transition: color 1s; ) input:focus::placeholder ( color: white; )

В браузері Google Chrome колір підказки при фокусуванні на такому полі плавно змінюватиметься протягом однієї секунди.

Атрибут placeholder використовується для створення підказок усередині порожніх полів введення (теги і