Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Aninhamento de Estilos para Código Mais Limpo | Pré-Processadores CSS e Sass
Layout CSS, Efeitos e Sass

bookAninhamento de Estilos para Código Mais Limpo

O próximo recurso poderoso é o aninhamento. Ele permite aninhar um seletor dentro de outro para criar um código mais organizado e legível. Podemos agrupar estilos e reduzir a quantidade de código necessária.

Vamos imaginar que precisamos criar a navegação do site.

O HTML para esta navegação será o seguinte:

<nav>
  <ul>
    <li>
      <a href="#home">Home</a>
    </li>
    <li>
      <a href="#about">About</a>
    </li>
    <li>
      <a href="#price">Price</a>
    </li>
  </ul>
</nav>

Considerando que, além da navegação, utilizamos as mesmas tags HTML (ul, li, a) várias vezes ao longo do projeto. Para adicionar estilos especificamente a esses elementos, é necessário utilizar regras de aninhamento em CSS. Assim, o CSS pode ser estruturado da seguinte forma:

nav {
  background-color: rebeccapurple;
  border-radius: 10px;
  padding: 10px;
}

nav ul {
  list-style: none;
  padding-left: 0;
}

nav ul li {
  display: inline-block;
  margin: 0 10px;
}

nav ul li a {
  text-decoration: none;
  color: aquamarine;
}

nav ul li a:hover {
  text-decoration: underline wavy;
}

Agora, veja como o Sass pode facilitar nosso trabalho. Todos esses estilos podem ser agrupados em um único bloco. O código é reescrito da seguinte forma:

nav {
  background-color: rebeccapurple;
  border-radius: 10px;
  padding: 10px;

  ul {
    list-style: none;
    padding-left: 0;

    li {
      display: inline-block;
      margin: 0 10px;

      a {
        text-decoration: none;
        color: aquamarine;
        
        &:hover {
          text-decoration: underline wavy;
        }
      }
    }
  }
}

É como se estivéssemos aninhando o bloco de estilo do elemento filho dentro do bloco do elemento pai. Observe que o símbolo & no seletor &:hover é utilizado para referenciar o seletor pai, neste caso, a. Esta é uma forma abreviada de escrever a:hover e facilita a escrita de seletores aninhados sem a necessidade de repetir o seletor pai várias vezes.

question mark

Qual é o benefício de usar o aninhamento do Sass?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 7. Capítulo 5

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

Can you explain more about how nesting works in Sass?

What are the benefits of using nesting in Sass compared to regular CSS?

Can you show more examples of using the `&` symbol in Sass?

Awesome!

Completion rate improved to 2.08

bookAninhamento de Estilos para Código Mais Limpo

Deslize para mostrar o menu

O próximo recurso poderoso é o aninhamento. Ele permite aninhar um seletor dentro de outro para criar um código mais organizado e legível. Podemos agrupar estilos e reduzir a quantidade de código necessária.

Vamos imaginar que precisamos criar a navegação do site.

O HTML para esta navegação será o seguinte:

<nav>
  <ul>
    <li>
      <a href="#home">Home</a>
    </li>
    <li>
      <a href="#about">About</a>
    </li>
    <li>
      <a href="#price">Price</a>
    </li>
  </ul>
</nav>

Considerando que, além da navegação, utilizamos as mesmas tags HTML (ul, li, a) várias vezes ao longo do projeto. Para adicionar estilos especificamente a esses elementos, é necessário utilizar regras de aninhamento em CSS. Assim, o CSS pode ser estruturado da seguinte forma:

nav {
  background-color: rebeccapurple;
  border-radius: 10px;
  padding: 10px;
}

nav ul {
  list-style: none;
  padding-left: 0;
}

nav ul li {
  display: inline-block;
  margin: 0 10px;
}

nav ul li a {
  text-decoration: none;
  color: aquamarine;
}

nav ul li a:hover {
  text-decoration: underline wavy;
}

Agora, veja como o Sass pode facilitar nosso trabalho. Todos esses estilos podem ser agrupados em um único bloco. O código é reescrito da seguinte forma:

nav {
  background-color: rebeccapurple;
  border-radius: 10px;
  padding: 10px;

  ul {
    list-style: none;
    padding-left: 0;

    li {
      display: inline-block;
      margin: 0 10px;

      a {
        text-decoration: none;
        color: aquamarine;
        
        &:hover {
          text-decoration: underline wavy;
        }
      }
    }
  }
}

É como se estivéssemos aninhando o bloco de estilo do elemento filho dentro do bloco do elemento pai. Observe que o símbolo & no seletor &:hover é utilizado para referenciar o seletor pai, neste caso, a. Esta é uma forma abreviada de escrever a:hover e facilita a escrita de seletores aninhados sem a necessidade de repetir o seletor pai várias vezes.

question mark

Qual é o benefício de usar o aninhamento do Sass?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 7. Capítulo 5
some-alt