Стилизация форм с помощью CSS
HTML-формы могут выглядеть намного лучше после стилизации, и CSS — инструмент для этого.
Пример
В этой стилизованной форме текстовые поля для имени и фамилии расположены над выпадающим списком стран.
Prompt
Создайте стилизованную HTML-форму с полями «Имя», «Фамилия» и выпадающим списком «Страна» (Australia, Canada, USA). Стилизуйте текстовые поля с полной шириной, отступами, margin и границей. Стилизуйте выпадающий список аналогичным образом.
Output: полная HTML-страница
index.html
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>CSS Styled Form</title>
<style>
input[type=text], select {
width: 100%;
padding: 12px 20px;
margin: 8px 0;
display: inline-block;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
input[type=submit] {
width: 100%;
background-color: #4CAF50;
color: white;
padding: 14px 20px;
margin: 8px 0;
border: none;
border-radius: 4px;
cursor: pointer;
}
input[type=submit]:hover {
background-color: #45a049;
}
div {
border-radius: 5px;
background-color: #f2f2f2;
padding: 20px;
}
</style>
</head>
<body>
<h2>CSS Forms</h2>
<div>
<form action="/action_page.php">
<label for="fname">First Name</label>
<input type="text" id="fname" name="firstname" placeholder="Your name..">
<label for="lname">Last Name</label>
<input type="text" id="lname" name="lastname" placeholder="Your last name..">
<label for="country">Country</label>
<select id="country" name="country">
<option value="australia">Australia</option>
<option value="canada">Canada</option>
<option value="usa">USA</option>
</select>
<input type="submit" value="Submit">
</form>
</div>
</body>
</html>
Стилизация полей ввода формы
Большинство типов input поддерживают стилизацию с помощью CSS: поля для текста или паролей, флажки, переключатели, а также поля выбора файлов. Стилизовать можно и кнопки формы, и метки полей ввода.
Внешний вид полей ввода обычно задают width, padding и margin, border и border-radius, а также background-color, color и font-size.