Los selectores en CSS permiten apuntar a elementos específicos dentro de un documento HTML para aplicarles estilos. A continuación, exploramos diversos tipos de selectores, sus usos y ejemplos.
Aplica estilos a todos los elementos de la página.
* {
margin: 0;
padding: 0;
} Selecciona un elemento único con un atributo id específico.
#id {
color: blue;
} Aplica estilos a todos los elementos que comparten una clase.
.class {
font-size: 16px;
} Aplica estilos a todas las etiquetas de un tipo específico.
div {
background-color: lightgray;
} Aplica estilos a varias etiquetas seleccionadas.
h1, h2, h3, h4, h5, h6 {
font-family: Arial, sans-serif;
} Aplica estilos solo a elementos hijos directos.
ul > li {
list-style: none;
} Aplica estilos a los elementos descendientes, sin importar su profundidad en el árbol DOM.
div p {
color: darkblue;
} Selecciona un elemento que está inmediatamente después de otro.
h2 + p {
font-weight: bold;
} Aplica estilos a los elementos hermanos que comparten el mismo padre.
div ~ p {
margin-left: 20px;
} Aplica estilos a elementos con un atributo específico igual a un valor.
[type="text"] {
border: 1px solid black;
} Aplica estilos a elementos cuyos atributos contienen un valor específico.
[attribute*="value"] {
color: green;
} Selecciona elementos cuyos atributos comienzan con un valor específico.
[attribute^="prefix"] {
background-color: yellow;
} Define estilos basados en el estado de un enlace.
a:link { color: blue; } /* Enlace no visitado */
a:visited { color: purple; } /* Enlace visitado */
a:hover { color: red; } /* Al pasar el mouse */
a:active { color: orange; } /* Durante el clic */ Aplica estilos al primer o último hijo de un contenedor.
p:first-child {
font-weight: bold;
}
p:last-child {
text-decoration: underline;
} Selecciona un hijo específico basado en su posición.
div > p:nth-child(3) {
color: teal;
} Selecciona un hijo basado en su posición desde el final.
div > p:nth-last-child(2) {
background-color: lightpink;
} <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ejemplo de Selectores CSS</title>
<style>
/* Universal */
* {
box-sizing: border-box;
}
/* ID */
#header {
background-color: lightblue;
}
/* Clase */
.highlight {
color: red;
}
/* Etiqueta */
p {
line-height: 1.5;
}
/* Hijos directos */
ul > li {
font-style: italic;
}
/* Descendientes */
section p {
margin: 10px 0;
}
/* Pseudo clases */
a:hover {
text-decoration: none;
}
div > p:nth-child(2) {
font-size: 18px;
}
</style>
</head>
<body>
<div id="header">Encabezado</div>
<section>
<p>Primer párrafo</p>
<p>Segundo párrafo</p>
<ul>
<li>Elemento 1</li>
<li>Elemento 2</li>
</ul>
<a href="#">Enlace</a>
</section>
</body>
</html>