DEV Community

Cover image for Practica selectores CSS con ejercicios 😎 (Parte 2)
Cristian Fernando
Cristian Fernando

Posted on

Practica selectores CSS con ejercicios 😎 (Parte 2)

Introducción

Los selectores CSS son importantes al momento de aplicar estilos en un proyecto web, por mas que domines el modelo de caja, las propiedades de position, flex y grid; sino dominas los selectores no podrás aplicar estilos a la estructura html de quieras.

Este post es la continuación de otro similar donde resolvemos 5 ejercicios sobre selectores, puedes leerlo acá:

Ahora vamos a nuestra practica.

Tenemos la siguiente plantilla HTML:

<!DOCTYPE html>
<html lang="es">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Plantilla Compleja</title>
  <link rel="stylesheet" href="styles.css">
</head>

<body>
  <header class="main-header">
    <h1 id="site-title">Mi Sitio Web</h1>
    <nav class="main-nav">
      <ul>
        <li><a href="#" class="nav-link active">Inicio</a></li>
        <li><a href="#" class="nav-link">Servicios</a></li>
        <li><a href="#" class="nav-link">Portafolio</a></li>
        <li><a href="#" class="nav-link">Contacto</a></li>
      </ul>
    </nav>
  </header>

  <main>
    <section class="content-section">
      <h2 class="section-title">Artículos Recientes</h2>
      <article class="article-item">
        <h3 class="article-title">Artículo 1</h3>
        <p class="article-content">Este es el contenido del primer artículo.</p>
        <a href="#" class="read-more">Leer más</a>
      </article>
      <article class="article-item featured">
        <h3 class="article-title">Artículo 2</h3>
        <p class="article-content">Este es el contenido del segundo artículo.</p>
        <a href="#" class="read-more">Leer más</a>
      </article>
      <article class="article-item">
        <h3 class="article-title">Artículo 3</h3>
        <p class="article-content">Este es el contenido del tercer artículo.</p>
        <a href="#" class="read-more">Leer más</a>
      </article>
    </section>

    <aside class="sidebar">
      <div class="widget">
        <h4 class="widget-title">Widget 1</h4>
        <p class="widget-content">Contenido del widget 1.</p>
      </div>
      <div class="widget">
        <h4 class="widget-title">Widget 2</h4>
        <p class="widget-content">Contenido del widget 2.</p>
      </div>
    </aside>
  </main>

  <footer class="main-footer">
    <p class="footer-text">&copy; 2023 Mi Sitio Web</p>
    <ul class="footer-links">
      <li><a href="#" class="footer-link">Política de Privacidad</a></li>
      <li><a href="#" class="footer-link">Términos de Servicio</a></li>
    </ul>
  </footer>
</body>

</html>
Enter fullscreen mode Exit fullscreen mode

Preguntas

Y las siguientes 10 preguntas sobre selectores CSS:

  • Selector de Atributo: ¿Cómo seleccionarías todos los enlaces (<a>) que tienen la clase nav-link y están dentro de un elemento <nav> con la clase main-nav?

  • Selector de Pseudo-clase: ¿Cómo aplicarías un estilo diferente al enlace que tiene la clase active dentro de la lista de navegación?

  • Selector de Descendencia: ¿Cómo seleccionarías todos los elementos <p> que están dentro de un <article> con la clase article-item?

  • Selector de Hijo Directo: ¿Cómo seleccionarías solo los elementos <li> que son hijos directos de un <ul> dentro del footer?

  • Selector de Hermano Adyacente: ¿Cómo seleccionarías el primer <article> que sigue inmediatamente a un <h2> con la clase section-title?

  • Selector de Pseudo-elemento: ¿Cómo agregarías un símbolo de flecha () después de cada enlace con la clase read-more?

  • Selector de Atributo con Valor Específico: ¿Cómo seleccionarías todos los elementos <a> que tienen un atributo href que comienza con #?

  • Selector de Negación: ¿Cómo seleccionarías todos los elementos <article> que no tienen la clase featured?

  • Selector de Pseudo-clase de Posición: ¿Cómo seleccionarías el tercer <article> dentro de la sección de artículos?

  • Selector de Atributo que Contiene una Palabra: ¿Cómo seleccionarías todos los elementos <h4> que tienen una clase que contiene la palabra title?

Respuestas

En esta ocasión te presento las respuestas en un CodePen:

Conclusión

Los selectores CSS pueden ser simples o complejos según nuestras necesidades, es importante dominar este tipo de selectores para poder avanzar en nuestros conocimientos sobre CSS.


Otros post de mi autoría que te pueden interesar:

Hostinger image

Get n8n VPS hosting 3x cheaper than a cloud solution

Get fast, easy, secure n8n VPS hosting from $4.99/mo at Hostinger. Automate any workflow using a pre-installed n8n application and no-code customization.

Start now

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay