Para formatar um HTML de maneira atraente, você pode utilizar a linguagem de folha de estilos CSS. Com CSS, você define atributos como layout, cor e forma dos elementos in­di­vi­du­ais do HTML. As ins­tru­ções de estilo do CSS existem in­de­pen­den­te­mente do HTML e precisam ser adi­ci­o­na­das ao HTML no documento.

Hos­pe­da­gem que se adapta às suas ambições
  • Fique online com 99,99% de tempo de atividade e segurança robusta
  • Aumente o de­sem­pe­nho com um clique à medida que o tráfego cresce
  • Inclui domínio gratuito, SSL, e-mail e suporte 24 horas por dia, 7 dias por semana

Quais métodos existem para adicionar CSS ao HTML

Quando você quiser adicionar CSS ao HTML, você pode fazer isso por meio de sty­leshe­ets internos ou externos. Nos sty­leshe­ets internos, as ins­tru­ções CSS estão di­re­ta­mente no documento HTML. Existe a pos­si­bi­li­dade de integrar CSS no início do arquivo HTML ou di­re­ta­mente e de forma contínua no código-fonte. Nesta me­to­do­lo­gia, um bom en­ten­di­mento básico de HTML e de sua sintaxe é essencial.

No de­sen­vol­vi­mento de sites, a maneira mais comum e limpa é a uti­li­za­ção de sty­leshe­ets CSS externos. Com isso, a adição de CSS ocorre por meio de uma linkagem do documento HTML com um arquivo CSS externo. A seguir, apre­sen­ta­mos uma visão geral das três me­to­do­lo­gias:

  • Estilo inline, ou seja, di­re­ta­mente no código-fonte
  • no início do documento HTML
  • ex­ter­na­li­zado em um arquivo CSS externo
O cons­tru­tor de sites da IONOS

MyWebsite é sua virada de chave para uma presença web pro­fis­si­o­nal, e inclui consultor pessoal!

  • Cer­ti­fi­cado SSL
  • Domínio
  • Suporte 24 horas

Estilo inline

Com esta me­to­do­lo­gia, a instrução de estilo é adi­ci­o­nada di­re­ta­mente no código-fonte por meio de uma tag style. As pro­pri­e­da­des desejadas são atri­buí­das apenas a um elemento HTML es­pe­cí­fico, per­mi­tindo designs di­fe­ren­tes ao longo do documento HTML. No exemplo abaixo, o cabeçalho h1 deve ser exibido na cor azul e com tamanho de fonte 14:

<h1 style="color: blue; font-size: 14px;">Isto é um título/h1>
html

Ao adicionar CSS ao HTML dessa forma, você deve levar em con­si­de­ra­ção de que muitos be­ne­fí­cios do CSS podem ser perdidos. Isso inclui a ca­pa­ci­dade de definir um comando abran­gente que se aplica a todos os elementos h1 no documento HTML. Além disso, pode haver um maior esforço de ma­nu­ten­ção, pois é ne­ces­sá­rio alterar di­re­ta­mente o código HTML.

Adicionar CSS no início do HTML

Adi­ci­o­nando o CSS no início do seu arquivo HTML, você deve escrever CSS ao HTML na seção de cabeçalho do seu documento HTML. A tag style torna-se parte do elemento head e aplica-se a todo o arquivo. Aqui, as ins­tru­ções de estilo CSS ainda estão contidas no próprio documento, mas são cla­ra­mente separadas do código HTML. No exemplo abaixo, o mesmo comando do exemplo anterior é aplicado. Desta vez, no entanto, todos os títulos h1 no arquivo serão for­ma­ta­das conforme es­pe­ci­fi­cado.

<!DOCTYPE html> 
<html>
<head>
<style>
h1 {color: blue; font-size: 14px;}
</style>
</head>
<body>
<h1>Este é um título</h1>
<p>Este é um parágrafo.</p>
</body>
</html>
html

Integrar CSS com arquivo externo

Esta é pro­va­vel­mente a melhor maneira de adicionar CSS ao HTML. Um site muitas vezes consiste em várias páginas, por isso faz sentido armazenar ins­tru­ções de estilo em um arquivo separado. Isso permite uma separação clara entre conteúdo e design e facilita a ma­nu­ten­ção. O arquivo externo é sim­ples­mente linkado ao documento HTML. Você salva a folha de estilo externa com a extensão .css e usa uma tag link para linkar o CSS no HTML. No exemplo, o arquivo CSS tem o nome “sty­lesheet.css”.

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="stylesheet.css">
</head>
<body>
<h1>Este é um título</h1>
<p>Este é um parágrafo.</p>
</body>
</html>
html

O atributo rel define aqui o tipo de relação lógica e href refere-se ao arquivo CSS a ser embutido. Observe que o elemento link também pode ter outros atributos. Com a pro­pri­e­dade media=”print”, por exemplo, você es­pe­ci­fica que a folha de estilo é usada apenas na vi­su­a­li­za­ção para impressão. A folha de estilo externa não contém tags HTML, mas apenas o res­pec­tivo seletor e chaves com as de­cla­ra­ções, como no exemplo a seguir:

h1 {
color: blue;
font-size:14px;
}
css

Os novos recursos mais comuns de CSS

Dentro desses métodos clássicos para adicionar CSS ao HTML, diversas novas fun­ci­o­na­li­da­des foram de­sen­vol­vi­das nos últimos anos, tornando o design de sites ainda mais flexível. Com seletores modernos como :has(), é possível di­re­ci­o­nar elementos-pai de­pen­dendo de seus filhos, enquanto consultas de contêiner garantem que com­po­nen­tes in­di­vi­du­ais se ajustem ao tamanho de seus res­pec­ti­vos con­têi­ne­res, in­de­pen­den­te­mente da largura da janela. Esses e outros novos recursos permitem im­ple­men­tar designs mais modulares, dinâmicos e amigáveis ao usuário, sem recorrer a soluções complexas ou ao Ja­vaS­cript.

Pseu­do­classe CSS :has()

Trata-se de um seletor pai que pode vincular estilos pre­de­fi­ni­dos a de­ter­mi­na­das condições. Por exemplo, um campo pode ser colorido de vermelho com uma entrada inválida e de verde com uma entrada válida:

.form-group:has(input:invalid) {
 border: 2px solid red;
}
.form-group:has(input:valid) {
 border: 2px solid green;
}
css

Consultas de contêiner

Consultas de contêiner permitem adicionar CSS ao HTML, vin­cu­lando regras de CSS não apenas ao tamanho da janela inteira do navegador (como com consultas de mídia CSS), mas também ao tamanho do contêiner ao redor.

Assim, cada módulo ou com­po­nente pode se adaptar in­di­vi­du­al­mente, de­pen­dendo de quanto espaço está dis­po­ní­vel em seu elemento pai. Isso pos­si­bi­lita um web design res­pon­sivo modular e realmente flexível, in­de­pen­dente da largura da janela. Por exemplo, pode-se definir que cartões com imagem e texto sejam exibidos lado a lado em uma linha assim que seu contêiner adjacente for su­fi­ci­en­te­mente largo.

Se o contêiner for mais estreito que um valor definido, neste exemplo 400 pixels, então a exibição padrão permanece.

@container (min-width: 400px) {
 .card { flex-direction: row; }
}
css

Ani­nha­mento de CSS

Ani­nha­mento de CSS permite aninhar seletores di­re­ta­mente dentro de outros seletores, se­me­lhante ao que já se conhece no SCSS ou LESS CSS.

Dessa forma, o código permanece mais or­ga­ni­zado, pois os estilos re­la­ci­o­na­dos ficam em um único local, em vez de repetir longas cadeias de seletores. Neste exemplo, todos os botões recebem o mesmo estilo básico, e, de­pen­dendo da classe adicional (primary ou secondary), eles ganham um visual diferente:

button {
 padding: 0.5rem 1rem;
 border: none;
 &.primary {
  background: blue;
  color: white;
 }
 &.secondary {
  background: gray;
  color: black;
 }
}
css

Novas funções de cor

Com as novas funções CSS, como color-mix() ou light-dark(), você pode misturar cores di­na­mi­ca­mente di­re­ta­mente no sty­lesheet ou escolher au­to­ma­ti­ca­mente variantes de acordo com a lu­mi­no­si­dade. Isso pos­si­bi­lita criar tran­si­ções de cor, temas ou ajustes para modo escuro, sem precisar calcular valores de cor fixos pre­vi­a­mente.

Assim, o CSS se torna mais flexível, pois as cores não são apenas definidas de forma estática, mas podem ser cal­cu­la­das e ajustadas. Neste exemplo, a cor de fundo de todos os elementos com a classe .btn é definida pela função CSS color-mix() em uma proporção de 50:50 entre vermelho e azul, re­sul­tando em violeta.

.btn {
 background: color-mix(in srgb, red 50%, blue);
}
css

Scroll snap

Scroll Snap é uma função CSS que permite definir que elementos se “encaixem” au­to­ma­ti­ca­mente em posições es­pe­cí­fi­cas ao rolar. Isso facilita a criação de galerias de imagens, car­ros­séis ou seções de página que param su­a­ve­mente em um ponto definido ao rolar.

Isso garante uma navegação fluida e amigável ao usuário. No exemplo a seguir, o container pai .slider faz o scroll ho­ri­zon­tal­mente (x) e assegura que o encaixe seja obri­ga­tó­rio (mandatory). Cada elemento filho .slide se alinha ao rolar de modo que se “encaixe” no início do container (start).

.slider {
 scroll-snap-type: x mandatory;
}
.slide { 
 scroll-snap-align: start; 
}
css
Ir para o menu principal