Un formulario es el elemento esencial para el envío de datos al servidor por parte del visitante del sitio.
Veamos un ejemplo donde implementamos un formulario y le aplicamos una serie de reglas de estilo a los diferentes elementos HTML que intervienen:
<!DOCTYPE html>
<html>
<head>
<title>Problema</title>
<meta charset="UTF-8">
<link rel="StyleSheet" href="estilos.css" type="text/css">
</head>
<body>
<h3>Usando CSS en un Formulario HTML</h3>
<div>
<form action="/action_page.php">
<label for="fname">Nombres</label>
<input type="text" id="fname" name="firstname" placeholder="Su nombre..">
<label for="lname">Apellido</label>
<input type="text" id="lname" name="lastname" placeholder="Su apellido..">
<label for="country">Pais</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="Enviar">
</form>
</div>
</body>
</html>
La hoja de estilo que se aplica es:
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;
}
Podemos observar que definimos un div contenedor y dentro de este el formulario. Para que los textos aparezcan a la izquierda, definimos una serie de label que las flotamos a izquierda, por lo que los controles del formulario aparecerán a derecha todos encolumnados.