Перейти к основному содержимому

Стилизация поля ввода при фокусе

Когда поле ввода получает фокус (по нему кликают), некоторые браузеры по умолчанию рисуют вокруг него синий контур. Если добавить полю ввода outline: none;, контур исчезнет.

Если вам нужен собственный стиль для поля ввода в фокусе, используйте селектор :focus.

Пример

Когда текстовое поле ввода получает фокус, цвет его фона меняется.

Prompt
Создайте HTML-страницу с текстовым полем ввода, которое меняет цвет фона на lightblue при получении фокуса, используя CSS-селектор :focus.
Output: complete HTML page

Пример

Когда текстовое поле ввода получает фокус, его граница меняется.

Prompt
Создайте HTML-страницу с текстовым полем ввода, которое получает границу 3px solid тёмного цвета (#555) при получении фокуса, используя CSS-селектор :focus.
Output: complete HTML page

Стилизация поля ввода со значком/изображением

Если внутри поля ввода должен быть значок, за это отвечают два свойства: background-image задаёт его, а background-position размещает. Большой отступ padding слева оставляет для значка свободное место.

Пример

Prompt
Создайте HTML-страницу с текстовым полем ввода, содержащим внутри значок поиска. Используйте свойство background-image с url('searchicon.png'), расположите его в 10px 10px, установите background-repeat в no-repeat и добавьте 40px левого отступа, чтобы освободить место для значка.
Output: complete HTML page

Анимированное поле поиска

В этом примере поле поиска становится шире при получении фокуса, а изменение ширины анимируется CSS-свойством transition. Подробнее это свойство рассматривается позже, в главе CSS Transitions.

Пример

Prompt
Создайте HTML-страницу с текстовым полем поиска, ширина которого анимируется до 100% при получении фокуса. Используйте CSS-свойство transition с width 0.4s ease-in-out для плавного эффекта анимации.
Output: complete HTML page