Как тратить минимум сил на подготовку и
проведение уроков?
Как быстро и объективно проверять
знания учащихся?
Как сделать изучение нового материала
максимально понятным?
Как избавить себя от подбора заданий и
их проверки после уроков?
Как наладить дисциплину на своих
уроках?
Как получить возможность работать
творчески?
Просмотр содержимого документа
«Возможности CSS для стилизации форм»
Стилизация форм
При помощи CSS можно качественно улучшить внешний вид HTML форм:
Стилизация полей ввода
Для определения ширины поля ввода можно использовать свойствоwidth:
input {
width: 100%;
}
В приведенном выше примере стили будут применяться ко всем элементам .
Для настройки стиля «Поле ввода» определенного типа, можно использовать селекторы атрибутов:
input[type=text] - выберет только текстовые поля ввода
input[type=text] - выберет только текстовые поля ввода
input[type=text] - выберет только текстовые поля ввода
input[type=text] - выберет только текстовые поля ввода
input[type=text] - выберет только текстовые поля ввода
input[type=password] - выберет только поля ввода паролей
input[type=password] - выберет только поля ввода паролей
input[type=password] - выберет только поля ввода паролей
input[type=password] - выберет только поля ввода паролей
input[type=password] - выберет только поля ввода паролей
input[type=number] - выберет только цифровые поля ввода
input[type=number] - выберет только цифровые поля ввода
input[type=number] - выберет только цифровые поля ввода
input[type=number] - выберет только цифровые поля ввода
input[type=number] - выберет только цифровые поля ввода
и так далее..
и так далее..
и так далее..
и так далее..
и так далее..
Промежутки у полей ввода
Чтобы добавить дополнительные промежутки внутри поля ввода, используйте свойство padding .
Когда в форме много полей ввода, идущих друг за другом, также может потребоваться использовать свойство margin , чтобы добавить дополнительные отступы снаружи поля ввода:
input[type=text] {
width: 100%;
padding: 12px 20px;
margin: 8px 0;
box-sizing: border-box;
}
Обратите внимание, что мы установили для свойства box-sizing значение border-box . Это сделано для того, чтобы промежутки и рамки включались в ширину и высоту элементов.
Поля ввода с рамкой
Чтобы изменить цвет и размер рамки поля ввода, используйте свойство border . Для добавления закругленных углов, используйте свойство border-radius :
input[type=text] {
border: 2px solid red;
border-radius: 4px;
}
Если вы хотите, чтобы рамка была только снизу поля ввода, то используйте свойство border-bottom :
input[type=text] {
border: none;
border-bottom: 2px solid red;
}
Цветные поля ввода
Чтобы добавить фоновый цвет для поля ввода, используйте свойство background-color. Чтобы изменить цвет текста в поле ввода, используйте свойство color :
input[type=text] {
background-color: #3CBC8D;
color: white;
}
Поля ввода в фокусе
По умолчанию, некоторые браузеры добавляют синюю внешнюю рамку вокруг поля ввода, когда оно получает фокус (пользователь кликает на него). Чтобы убрать такой эффект, добавляем для поля ввода свойство outline: none; .
Чтобы определить какой-нибудь свой стиль для поля ввода, находящегося в фокусе, используйте псевдокласс :focus:
input[type=text]:focus {
background-color: lightblue;
}
input[type=text]:focus {
border: 3px solid #555;
}
Поле ввода с иконкой/изображением
Если вы хотите внутри поля ввода разместить иконку, то используйте свойство background-image . Позиционировать ее можно при помощи свойства background-position . Также, обратите внимание, что мы добавляем большой отступ слева, чтобы зарезервировать место для иконки:
input[type=text] {
background-color: white;
background-image: url('searchicon.png');
background-position: 10px 10px;
background-repeat: no-repeat;
padding-left: 40px;
}
Анимированное поле ввода
В следующем примере мы используем свойство transition , чтобы добавить анимацию на изменение ширины поля ввода, когда оно получает фокус:
input[type=text] {
transition: width 0.4s ease-in-out;
}
input[type=text]:focus {
width: 100%;
}
Стилизация области ввода
Чтобы запретить изменять размер области текстового ввода (отключить "захват" в левом нижнем углу), используйте свойство resize :