🚀

Módulo 13: CSS Moderno (O Futuro Agora)

2. Resumo da Aula Anterior

No Módulo 12, organizámos o nosso código com Variáveis CSS. Agora, vamos explorar as propriedades mais recentes que tornaram o desenvolvimento web muito mais simples e inteligente.

3. O Que Vais Aprender Hoje

4. Teoria: O Código que se Explica

Conceito: O CSS moderno foca-se menos em "onde as coisas estão fisicamente" (esquerda/direita) e mais em "como o conteúdo flui". Isto ajuda a criar sites que funcionam em qualquer idioma ou orientação de ecrã sem re-escrever o código.

🌍 Analogia: O GPS vs. Indicações de Esquerda/Direita

Imagina que estás a dar indicações:

  • Antigamente (Left/Right): Dizes "vira à esquerda na padaria". Se a pessoa estiver a vir do lado contrário, o "esquerda" está errado!
  • Moderno (Inline/Block): Dizes "segue em direção ao norte". Não importa de onde a pessoa vem, o norte é sempre o norte. No CSS, inline-start é o início do texto, não importa se o idioma se lê da esquerda para a direita ou vice-versa!

5. Exemplos Práticos

Exemplo 1: Vídeos Proporcionais

Acabaram-se os vídeos "esborrachados".

.video-player {
  width: 100%;
  aspect-ratio: 16 / 9; /* Mantém sempre o formato de cinema */
  object-fit: cover;
}

O browser calcula automaticamente a altura correta baseada na largura atual.

Exemplo 2: Logical Properties

Margem inteligente.

.botao {
  /* Em vez de margin-left: 10px; */
  margin-inline-start: 10px;

  /* Em vez de padding-top: 5px; */
  padding-block-start: 5px;
}

Isto faz com que o espaçamento faça sentido mesmo que o site seja traduzido para árabe (onde se lê da direita para a esquerda).

6. Agora é a Tua Vez!

Vamos criar um "Card Moderno":

  1. Cria uma <div> para um card de imagem.
  2. Usa aspect-ratio: 1 / 1 para garantir que a imagem é sempre um quadrado perfeito.
  3. Usa margin-inline: auto para centrar o card horizontalmente.
  4. Adiciona um @supports (display: grid) e, lá dentro, muda o layout do card para usar Grid.
  5. Observa como o site se mantém funcional mesmo que o browser seja muito antigo (embora hoje em dia quase todos suportem Grid!).

7. Verificação de Conhecimento

Carregando quiz...

8. Resumo do Que Aprendemos

9. Desafios Práticos

Desafio 1: O Quadrado Mágico

Como crias um elemento que é sempre um quadrado perfeito apenas definindo a largura?

Desafio 2: Internacionalização

Se o teu site for traduzido para um idioma vertical (de cima para baixo), qual propriedade lógica usarias para o espaçamento que normalmente seria o padding-left?

Desafio 3: Detetive de Browsers

Como verificas se o browser suporta a propriedade backdrop-filter antes de a usares?

« Aula Anterior Próxima Aula »