
Media Queries y diseño responsive en CSS
Domina el diseño responsive con Media Queries: define breakpoints, aplica Mobile First y adapta layouts y tipografía para interfaces perfectas en cualquier pantalla.
CSSHTMLDomina las pseudoclases CSS para crear interfaces interactivas. Controla estados como hover, excluye elementos y selecciona por posición para un código más limpio y eficiente.
enlacesLos enlaces pueden reaccionar a distintas acciones del usuario. Para demostrarlo, creamos una navegación simple con varios enlaces que luego podrán cambiar su apariencia según el estado de interacción.
<!-- Navegación principal con enlaces -->
<nav class="menu">
<!-- Cada enlace representa una acción distinta del usuario -->
<a href="#inicio">Inicio</a>
<a href="#servicios">Servicios</a>
<a href="#contacto">Contacto</a>
</nav>
:link, :hover, :active y :visitedLas pseudoclases permiten aplicar estilos según el estado del enlace, como si fue visitado, si el mouse está encima o si se está presionando. Esto mejora la experiencia visual y la usabilidad.
/* Enlaces que aún no fueron visitados */
a:link {
/* Se usa para diferenciar enlaces nuevos */
color: darkblue;
background-color: lightcyan;
}
/* Enlace cuando el mouse pasa por encima */
a:hover {
/* Refuerza visualmente la interacción */
background-color: navy;
color: white;
padding: 12px;
}
/* Enlace mientras se hace click */
a:active {
/* Indica que el enlace está siendo presionado */
background-color: gold;
color: black;
}
/* Enlaces ya visitados */
a:visited {
/* Permite distinguir navegación previa */
color: gray;
}
Para aplicar estilos selectivos, es necesario contar con una estructura clara. En este ejemplo usamos varios div con clases distintas para luego excluir algunos mediante pseudoclases.
<!-- Contenedor principal -->
<div class="contenedor">
<!-- Elemento que no debería recibir ciertos estilos -->
<div class="item">Item</div>
<!-- Elementos genéricos -->
<div>Elemento A</div>
<div>Elemento B</div>
</div>:not()La pseudoclase :not() permite aplicar estilos a un conjunto amplio de elementos evitando algunos específicos. Es muy útil para reducir código y mantener reglas claras y reutilizables.
/* Aplica estilos a todos los div excepto los que tengan la clase .item */
div:not(.item) {
/* Se evita afectar el contenedor principal */
padding-left: 40px;
background-color: #f2f2f2;
}
Cuando varios elementos comparten un mismo padre, podemos aprovechar su posición para aplicar estilos específicos. Esta estructura es ideal para aprender a usar pseudoclases basadas en orden.
<!-- Contenedor padre -->
<div class="padre">
<!-- Elementos hijos -->
<div>Primer hijo</div>
<div>Segundo hijo</div>
<div>Tercer hijo</div>
</div>
:nth-child()La pseudoclase :nth-child() permite aplicar estilos según la posición de un elemento dentro de su padre. Es clave para listas, grillas y estructuras repetitivas sin usar clases extra.
/* Selecciona el segundo hijo dentro del contenedor .padre */
.padre div:nth-child(2) {
/* Se destaca visualmente el elemento por su posición */
font-weight: bold;
color: orange;
}

CSSDomina el diseño responsive con Media Queries: define breakpoints, aplica Mobile First y adapta layouts y tipografía para interfaces perfectas en cualquier pantalla.

CSSDomina las pseudoclases CSS para crear interfaces interactivas. Controla estados como hover, excluye elementos y selecciona por posición para un código más limpio y eficiente.

Aprende a manejar el espacio visual con ejes, aplicar gradientes, transformar y animar elementos. Crea interfaces modernas y dinámicas con efectos visuales profesionales en CSS.