141 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			141 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | ||
|  | title: How to Create a Contact Form with CSS | ||
|  | localeTitle: Cómo crear un formulario de contacto con CSS | ||
|  | --- | ||
|  | ## Cómo crear un formulario de contacto con CSS
 | ||
|  | 
 | ||
|  | Primero creamos los elementos HTML: campos de entrada para Nombre, Apellido, Correo electrónico y Área de texto para el mensaje. | ||
|  | 
 | ||
|  | Más tarde aplicamos estilos CSS para hacer que el formulario sea visualmente atractivo. | ||
|  | 
 | ||
|  | ### La parte HTML
 | ||
|  | 
 | ||
|  | La sección HTML tiene un div con `container` clase con el encabezado `h3` " **Formulario de contacto** " | ||
|  | 
 | ||
|  | El formulario con el nombre **contact\_form** contiene campos de entrada para: | ||
|  | 
 | ||
|  | *   Nombre de pila | ||
|  | *   Apellido | ||
|  | *   Email | ||
|  | *   Mensaje | ||
|  | 
 | ||
|  | Un div con `center` clase para alinear el centro de elementos. Un tipo de `input` `submit` para enviar el formulario. El atributo `required` en los campos de texto se comprueba para el valor en el envío. | ||
|  | 
 | ||
|  | ```html | ||
|  | 
 | ||
|  | <div class="container">  | ||
|  |     <h3>Contact Form</h3>  | ||
|  |     <form action="#" name="contact_form">  | ||
|  |         <label for="first_name">First Name</label>  | ||
|  |         <input name="first_name" type="text" required placeholder="John"/>  | ||
|  |         <br>  | ||
|  |         <label for="last_name">Last Name</label>  | ||
|  |         <input name="last_name" type="text" required placeholder="Doe"/>  | ||
|  |         <br>  | ||
|  |         <label for="email">Email</label>  | ||
|  |         <input name="email" type="email" required placeholder="you@domain.com"/>  | ||
|  |         <br>  | ||
|  |         <label for="message">Message</label><br>  | ||
|  |         <textarea name="message" cols="30" rows="10" placeholder="Enter your message here ..." required> </textarea>  | ||
|  |         <div class="center">  | ||
|  |             <input type="submit" value="Submit">  | ||
|  |         </div>  | ||
|  |     </form>  | ||
|  |  </div>  | ||
|  | ``` | ||
|  | 
 | ||
|  | ### La parte de CSS
 | ||
|  | 
 | ||
|  | ```css | ||
|  | /* Importing the Roboto font from Google Fonts. */  | ||
|  |  @import url("https://fonts.googleapis.com/css?family=Roboto:400");  | ||
|  |   | ||
|  |  /* Set font of all elements to 'Roboto' */  | ||
|  |  * {  | ||
|  |     font-family: 'Roboto', sans-serif;  | ||
|  |     font-weight: 400;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Remove outline of all elements on focus */  | ||
|  |  *:focus {  | ||
|  |     outline: 0;  | ||
|  |  }  | ||
|  |   | ||
|  |  body {  | ||
|  |     background: #263238;  /* Set background color to #263238*/  | ||
|  |  }  | ||
|  |   | ||
|  |  h3 {  | ||
|  |     text-align: center;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Add styles to 'container' class */  | ||
|  |  .container {  | ||
|  |     padding: 12px 24px 24px 24px;  | ||
|  |     margin: 48px 12px;  | ||
|  |     background: #E3F2FD;  | ||
|  |     border-radius: 4px;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Add styles to 'label' selector */  | ||
|  |  label {  | ||
|  |     font-size: 0.85em;  | ||
|  |     margin-left: 12px;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Add styles to 'input' and 'textarea' selectors */  | ||
|  |  input[type=text],input[type=email], textarea {  | ||
|  |     width: 100%;  | ||
|  |     padding: 12px;  | ||
|  |     border: 1px solid #ccc;  | ||
|  |     border-radius: 4px;  | ||
|  |     box-sizing: border-box;  | ||
|  |     margin-top: 6px;  | ||
|  |     margin-bottom: 16px;  | ||
|  |     resize: vertical;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Add styles to show 'focus' of selector */  | ||
|  |  input[type=text]:focus,input[type=email]:focus, textarea:focus {  | ||
|  |     border: 1px solid green;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Add styles to the submit button */  | ||
|  |  input[type=submit] {  | ||
|  |     background: #64B5F6;  | ||
|  |     margin: 0 auto;  | ||
|  |     outline: 0;  | ||
|  |     color: white;  | ||
|  |     border: 0;  | ||
|  |     padding: 12px 24px;  | ||
|  |     border-radius: 4px;  | ||
|  |     transition: all ease-in-out 0.1s;  | ||
|  |     position: relative;  | ||
|  |     display: inline-block;  | ||
|  |     text-align: center;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Add styles for 'focus' property */  | ||
|  |  input[type=submit]:focus {  | ||
|  |     background: #A5D6A7;  | ||
|  |     color: whitesmoke;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Style 'hover' property */  | ||
|  |  input[type=submit]:hover {  | ||
|  |     background: #2196F3;  | ||
|  |  }  | ||
|  |   | ||
|  |  /* Align items to center of the 'div' with the class 'center' */  | ||
|  |  .center {  | ||
|  |     text-align: center;  | ||
|  |  }  | ||
|  | ``` | ||
|  | 
 | ||
|  | ### Salida
 | ||
|  | 
 | ||
|  |  | ||
|  | 
 | ||
|  | ### Más información:
 | ||
|  | 
 | ||
|  | Visite [FreeCodeCamp - Formulario de contacto](https://codepen.io/rakhi2104/pen/QqYOoe/) en [Codepen.io](https://codepen.io) |