programacion-web
Version:
validacion-formularios
124 lines (110 loc) • 3.35 kB
CSS
:root {
--color-primario:#ff9a9e;
--color-secundario: #f0a14c;
--color-fondo: linear-gradient(to right, #ff9a9e, #fad0c4, #fbc2eb);
--color-texto: #2B2D42;
--color-borde: #E9ECEF;
}
/* 2. RESET BASICO */
/* Proposito: Eliminar márgenes y paddings predeterminados del navegador. */
/* Ventaja: Evita inconsistencias entre navegadores. */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
/* Incluye padding y border en el ancho/alto */
}
/* 3. ESTILOS GENERALES */
/* Tipografia: "Inter" es un
a fuente moderna y legible. */
/* Fondo: Color claro para contraste con el formulario. */
body {
font-family: 'Inter', sans-serif;
background: var(--color-fondo);
color: var(--color-texto);
line-height: 1.6; /* Mejora legibilidad en textos largos */
padding: 40px 20px; /* Espaciado externo */
}
/* 4. CONTENEDOR PRINCIPAL */
/* max-width: limita el ancho en pantallas grandes. */
/* margin: 0 auto: centra el contenedor horizontalmente. */
/* box-shadow: Efecto de elevación sutil. */
.contenedor-formulario {
max-width: 600px;
margin: 0 auto;
background: white;
padding: 40px;
border-radius: 12px;/* Bordes redondeados */
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);/* Sombra exterior */
}
/* 5. ESTILOS DE TIPOGRAFÍA */
/* Jerarquía visual: h1 > subtitlo > labels > inputs. */
/* font-weight: negritas para títulos y labels. */
h1 {
font-size: 28px;
color: var(--color-primario);
margin-bottom: 8px;
}
.subtitulo {
color: #6C757D;/* Gris para texto secundario */
margin-bottom: 30px;
}
/* 6. GRUPOS DE FORMULARIO */
/* margin-bottom: espaciado vertical entre grupos. */
/* label: block en labels para ocupar toda la línea. */
.grupo-formulario {
margin-bottom: 20px;
}
label {
display: block;
margin-bottom: 8px;
font-weight: 500;
/* Semi-negrita */
font-size: 14px;
}
/* 7. INPUTS Y TEXTAREA */
/* transition: Efecto suave al hacer focus. */
/* :focus-state: Feedback visual al interactuar. */
input,textarea {
width: 100%;
padding: 12px 15px;
border: 1px solid var(--color-borde);
border-radius: 8px;
transition: all 0.3s; /* Animación suave */
}
input:focus,
textarea:focus {
border-color: var(--color-secundario);
outline: none; /* Elimina el outline predeterminado */
box-shadow: 0 0 5px rgba(76, 201, 240, 0.2);
/* Sombra interior (efecto glow) */
}
/* 8. DISPOSICIÓN EN COLUMNAS (GRUPO DOBLE) */
/* grid-template-columns: divide en 2 columnas iguales. */
/* gap: Espacio entre columnas. */
.grupo-doble {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}
/* 9. ESTILO DE ENVÍO */
/* cursor: pointer: Cambia el cursor al pasar sobre el botón. */
/* :flexbox: Centra texto + ícono. */
/* :hover-state: Efecto al interactuar. */
.boton-enviar {
background-color: var(--color-primario);
color: white;
border: none;
padding: 14px 24px;
border-radius: 8px;
font-weight: 600;
cursor: pointer;
transition: background 0.3s;
display: flex;
justify-content: center;
align-items: center;
}
.boton-enviar:hover {
background-color: #654579;
/* Color oscuro al pasar el mouse */
}