CSS - Referências de Cores

-

Nomes de Cores

O CSS oferece um conjunto de nomes de cores predefinidos que você pode usar para especificar cores em seus estilos. Esses nomes de cores são fáceis de lembrar e fornecem uma maneira rápida de aplicar cores sem precisar saber os valores específicos em hexadecimal, RGB ou HSL. Alguns nomes de cores comumente usados incluem vermelho, azul, verde, amarelo, roxo, laranja, preto, branco e cinza.

Exemplo: Definir a cor do texto como vermelho

p {
  color: red;
}

Você também pode definir a cor de fundo de um elemento como azul usando a propriedade background-color:

Exemplo: Definir a cor de fundo como azul

div {
  background-color: blue;
}

Embora os nomes de cores sejam úteis para prototipagem rápida ou quando você precisa de um conjunto básico de cores, eles têm algumas limitações. A variedade de cores disponíveis através de nomes predefinidos é limitada em comparação com as vastas possibilidades oferecidas pelos valores hexadecimais, RGB e HSL. Os nomes de cores podem não fornecer o tom ou a variação exata que você precisa para o seu design. Usar nomes de cores pode tornar seu código menos manutenível, pois fica mais difícil fazer alterações globais em suas folhas de estilo.

Apesar dessas limitações, os nomes de cores ainda têm seu lugar no CSS para iniciantes ou quando você precisa aplicar cores rapidamente sem se preocupar com valores específicos. É importante estar ciente desses compromissos e considerar o uso de notações mais flexíveis, como valores hexadecimais ou RGB, para obter mais controle e precisão em suas escolhas.

Valores de Cor Hexadecimal

A notação de cor hexadecimal é uma forma comum de especificar cores em CSS. Ela oferece um método compacto para representar muitas cores. Os códigos de cor hexadecimal consistem em um símbolo de hash (#) seguido por seis caracteres, onde cada par de caracteres representa a intensidade dos componentes vermelho, verde e azul (RGB).

A estrutura de um código de cor hexadecimal é a seguinte:

#RRGGBB
  • RR representa o componente vermelho (00 a FF)
  • GG representa o componente verde (00 a FF)
  • BB representa o componente azul (00 a FF)

Os valores para cada componente variam de 00 (intensidade mais baixa) a FF (intensidade mais alta). Por exemplo, #000000 representa preto (sem intensidade de cor), enquanto #FFFFFF representa branco (intensidade total de cor).

Exemplo de uso de valores de cor hexadecimal em CSS

h1 {
  color: #FF0000; /* Vermelho */
}

Você também pode definir a cor de fundo de um elemento usando um valor hexadecimal:

Exemplo: Definindo cor de fundo em CSS

div {
  background-color: #00FF00; /* Verde */
}

A notação hexadecimal suporta muitas cores. Combinando diferentes valores para os componentes vermelho, verde e azul, você pode criar qualquer cor necessária. Por exemplo:

Exemplos de vários valores de cor hexadecimal em CSS

p {
  color: #0000FF; /* Azul */
}

.highlight {
  background-color: #FFFF00; /* Amarelo */
}

a {
  color: #800080; /* Roxo */
}

A notação hexadecimal não diferencia maiúsculas de minúsculas, então você pode usar letras maiúsculas ou minúsculas para os valores dos componentes (por exemplo, #FF0000 é o mesmo que #ff0000).

O uso de valores hexadecimais oferece um controle preciso sobre as cores em suas páginas web. Eles são amplamente suportados pelos navegadores e comumente usados em frameworks CSS e ferramentas de design. A notação hexadecimal permite muitas opções e é uma habilidade importante para desenvolvedores web e designers.

Valores de Cor RGB

O modelo de cor RGB (Vermelho, Verde, Azul) é uma forma de especificar cores em CSS. Ele representa cores misturando diferentes níveis de luz vermelha, verde e azul. Os valores de cor RGB em CSS são especificados usando a função rgb(), que recebe três argumentos representando os componentes vermelho, verde e azul.

A estrutura de um valor de cor RGB em CSS é a seguinte:

rgb(vermelho, verde, azul)

Cada valor de componente varia de 0 a 255. Por exemplo:

  • rgb(255, 0, 0) representa vermelho puro
  • rgb(0, 255, 0) representa verde puro
  • rgb(0, 0, 255) representa azul puro

Definindo a cor do texto usando valores RGB

Exemplo: Definindo a cor do texto usando valores RGB

p {
  color: rgb(255, 0 ,0); /* Vermelho */
}

Você pode misturar diferentes níveis de vermelho, verde e azul para criar cores diferentes:

Exemplos de valores de cor RGB em CSS

Exemplos de valores de cor RGB em CSS

h1 {
    color: rgb(0 ,128 ,0); /* Verde */
}

.highlight {
    background-color: rgb(255 ,255 ,0); /* Amarelo */
}

a {
    color: rgb(128 ,0 ,128); /* Roxo */
}

O RGB permite criar muitas cores alterando o nível de cada componente. Isso oferece mais controle do que usar nomes predefinidos.

O CSS também suporta valores RGBA (Vermelho Verde Azul Alpha) que adicionam um componente de opacidade à cor. O valor de opacidade varia de zero (transparência total) a um (opacidade total).

Usando RGBA para transparência

Exemplo: Usando RGBA para transparência

div { 
    background-color: rgba(255 ,00 ,00 ,.5); /* Vermelho com cinquenta por cento de opacidade */ 
} 

O uso de RGBA permite criar cores com transparência sem afetar a opacidade de todo o elemento. Isso é útil para criar sobreposições e outros efeitos onde você precisa controlar a transparência de cores individuais.

RGB e RGBA são amplamente suportados em CSS e oferecem uma ampla gama de opções em comparação com os nomes comumente usados no design web.

Valores de Cor HSL

HSL (Matiz, Saturação, Luminosidade) é outro modelo de cor usado em CSS para especificar cores. Ele oferece uma maneira de descrever cores com base em seus valores de matiz, saturação e luminosidade. O modelo de cor HSL é representado usando a função hsl() em CSS.

A estrutura de um valor de cor HSL em CSS é a seguinte:

hsl(matiz, saturação, luminosidade)
  • Matiz: Representa a roda de cores e é especificado como um ângulo entre 0 e 360 graus. 0 graus representa vermelho, 120 graus representa verde e 240 graus representa azul.
  • Saturação: Representa a intensidade da cor e é especificada como uma porcentagem de 0% (sem saturação) a 100% (saturação total).
  • Luminosidade: Representa o brilho da cor e é especificada como uma porcentagem de 0% (preto) a 100% (branco).

Definindo a cor do texto usando valores HSL

Exemplo: Definindo a cor do texto usando valores HSL

p {
    color: hsl(0, 100%, 50%); /* Vermelho */
}

Exemplos de valores de cor HSL em CSS

Exemplo de valores de cor HSL em CSS

h1 {
    color: hsl(120, 100%, 50%); /* Verde */
}

.highlight {
    background-color: hsl(60, 100%, 50%); /* Amarelo */
}

a {
    color: hsl(300, 100%, 50%); /* Roxo */
}

O modelo HSL permite criar muitas cores ajustando o matiz, a saturação e a luminosidade. Ele oferece uma maneira intuitiva em comparação com valores hexadecimais ou RGB.

Semelhante ao RGBA, o CSS também suporta valores HSLA (Matiz, Saturação, Luminosidade, Alfa) que adicionam um componente de opacidade. O valor de opacidade varia de zero (totalmente transparente) a um (totalmente opaco).

Usando HSLA para transparência

Exemplo: Usando HSLA para transparência

div {
    background-color: hsla(0, 100%, 50%, 0.5); /* Vermelho com cinquenta por cento de opacidade */
}

O uso de HSLA permite controlar a transparência de cores individuais sem afetar a opacidade de todo o elemento. Isso é útil para criar sobreposições translúcidas, gradientes e outros efeitos visuais.

HSL e HSLA oferecem uma maneira flexível de especificar cores. O CSS oferece uma abordagem intuitiva para seleção que permite ajustes fáceis para criar variações. HSL é uma boa escolha quando você deseja criar esquemas baseados em um único matiz ou precisa fazer ajustes sutis em um design.

Palavras-chave de Cores

Além dos nomes de cores, valores hexadecimais, RGB e HSL, o CSS também oferece um conjunto de palavras-chave de cores. As palavras-chave de cores são valores de cores predefinidos que têm um significado ou propósito específico no design web. Essas palavras-chave oferecem uma maneira rápida de aplicar cores sem precisar lembrar de códigos de cores específicos.

Algumas palavras-chave de cores comumente usadas no CSS incluem:

  • transparent: Representa uma cor totalmente transparente.
  • currentColor: Representa o valor da propriedade color de um elemento. Permite herdar o valor de cor do elemento pai ou usar o valor de cor atual para outras propriedades como border-color ou background-color.
  • inherit: Herda o valor de cor do elemento pai. Essa palavra-chave é útil quando você deseja que um elemento tenha a mesma cor que seu pai.

Usando Palavras-chave de Cores no CSS

Exemplo: Usando a palavra-chave transparent

.overlay {
  background-color: transparent;
}

Exemplo: Usando a palavra-chave currentColor

.button {
  color: blue;
  border: 2px solid currentColor;
}

Exemplo: Usando a palavra-chave inherit

.child-element {
  color: inherit;
}

.overlay tem um fundo transparente, permitindo que o conteúdo atrás dele seja visível. Isso é útil para criar sobreposições ou elementos semi-transparentes.

.button usa currentColor. O texto é azul e, ao usar currentColor para border-color, tanto o texto quanto a borda serão azuis. Se você mudar a cor do texto depois, a borda será atualizada automaticamente.

.child-element usa inherit. Ele assume a cor do texto do seu pai sem precisar de uma especificação explícita.

As palavras-chave de cores fornecem uma maneira de aplicar cores com base em significados específicos ou relações entre elementos. Elas podem ser usadas com outras notações como valores hexadecimais, RGB ou HSL para estilização flexível no seu CSS.

Propriedades de Cor no CSS

O CSS oferece propriedades que aceitam valores de cor, permitindo aplicar cores a diferentes partes de um elemento. As propriedades de cor mais usadas no CSS são color, background-color e border-color.

Definindo a Cor do Texto

A propriedade color define a cor do texto de um elemento. Ela pode ser aplicada a qualquer elemento que contenha texto, como parágrafos, títulos, links ou elementos span.

Exemplo: Definindo a Cor do Texto

p {
  color: blue;
}

h1 {
  color: #ff0000;
}

a {
  color: rgb(0, 128, 0);
}

Nestes exemplos, a propriedade color define a cor do texto dos parágrafos como azul, dos títulos como vermelho usando um valor hexadecimal, e dos links como verde usando um valor RGB.

Definindo a Cor de Fundo

A propriedade background-color define a cor de fundo de um elemento. Ela pode ser aplicada a qualquer elemento.

Exemplo: Definindo a Cor de Fundo

div {
  background-color: yellow;
}

.container {
  background-color: #f0f0f0;
}

button {
  background-color: hsla(240, 100%, 50%, 0.8);
}

Nestes exemplos, a propriedade background-color define a cor de fundo de um elemento div como amarelo, de uma classe container como cinza claro usando um valor hexadecimal, e de um botão como azul semi-transparente usando um valor HSLA.

Definindo a Cor da Borda

A propriedade border-color define a cor da borda de um elemento. Ela pode ser aplicada se o elemento tiver uma borda.

Exemplo: Definindo a Cor da Borda

.box {
  border: 2px solid;
  border-color: red;
}

input[type="text"] {
  border:1px solid; 
  border-color:#ccc; 
} 

button { 
  border: 3px solid; 
  border-color: rgb(0, 0, 0); 
} 

Nestes exemplos, a propriedade border-color define a cor da borda para uma classe box como vermelha, para um campo de entrada como cinza claro usando um valor hexadecimal, e para um botão como preto usando um valor RGB. Essas propriedades de cor aceitam várias notações de cor, como nomes de cores, valores hexadecimais, RGB, RGBA, HSL e HSLA. Você pode usar essas notações de acordo com a cor que deseja aplicar. Ao usar essas propriedades de cor, você pode controlar a cor do texto, a cor de fundo e a cor da borda dos elementos em suas páginas web, criando designs visualmente atraentes e consistentes.

Transparência e Opacidade de Cores

Transparência e opacidade são conceitos em CSS que permitem controlar a visibilidade de cores e elementos. O CSS oferece formas de aplicar transparência às cores usando valores de cor RGBA e HSLA, e controlar a opacidade dos elementos usando a propriedade opacity.

Ao trabalhar com cores, você pode usar valores de cor RGBA (Vermelho, Verde, Azul, Alpha) ou HSLA (Matiz, Saturação, Luminosidade, Alpha) para especificar uma cor com transparência. O valor alpha em RGBA e HSLA representa a opacidade da cor; 0 significa totalmente transparente e 1 significa totalmente opaco.

Usando RGBA para Transparência de Cor

Para aplicar transparência a uma cor usando RGBA, use a função rgba():

Exemplo: Usando RGBA para Transparência de Cor

.overlay {
  background-color: rgba(255, 0, 0, 0.5); /* Vermelho com 50% de opacidade */
}

p {
  color: rgba(0, 0, 255, 0.8); /* Azul com 80% de opacidade */
}
  • O elemento .overlay tem um fundo vermelho semi-transparente.
  • O texto nos parágrafos é definido como azul com um valor alpha de .8.

Usando HSLA para Transparência de Cor

Similar ao RGBA:

Exemplo: Usando HSLA para Transparência de Cor

.button {
  background-color: hsla(120%,100%,50%, .6); /* Verde com opacidade de .6 */
}

a {
  color: hsla(240%,100%,50%, .9); /* Azul com opacidade de .9 */
}
  • O elemento .button tem um fundo verde semi-transparente.
  • Os links têm uma cor azul definida com um valor alpha de .9.

Usando a Propriedade Opacity

O CSS também fornece a propriedade opacity:

Exemplo: Usando a Propriedade Opacity

img {
  opacity: .5; /* Torna a imagem metade opaca */
}

.container { 
  opacity: .8; /* Torna o container majoritariamente opaco */ 
}
  • Uma imagem é tornada metade opaca ao definir sua opacity.
  • Um elemento container é majoritariamente opaco ao definir sua opacity.

Observe que ao usar opacity, isso afeta tanto um elemento quanto seu conteúdo. Se você quiser transparência apenas em partes específicas ou cores dentro de um elemento sem afetar as opacidades dos elementos filhos, use RGBA ou HSLA.

Gradientes

Os gradientes CSS permitem criar transições entre duas ou mais cores. Gradientes adicionam interesse visual aos seus designs web sem usar imagens. O CSS suporta dois tipos de gradientes: gradientes lineares e gradientes radiais.

Gradientes Lineares

Gradientes lineares criam uma transição em linha reta de uma cor para outra. Para criar um gradiente linear, use a função linear-gradient() como valor para a propriedade background-image.

Exemplo: Criando um gradiente linear

.linear-gradient {
  background-image: linear-gradient(to right, red, blue);
}

Neste exemplo, o gradiente começa com vermelho à esquerda e muda para azul à direita. Você pode especificar a direção do gradiente usando palavras-chave como to right, to bottom, to top, ou to left, ou usando ângulos como 45deg.

Exemplo: Gradiente linear com múltiplas cores

.linear-gradient-multiple {
  background-image: linear-gradient(to bottom right, red, yellow, green);
}

Você também pode criar gradientes lineares com múltiplas paradas de cor. Neste exemplo, começa com vermelho no topo esquerdo, muda para amarelo no meio e termina com verde no canto inferior direito.

Gradientes Radiais

Gradientes radiais criam uma transição circular ou elíptica entre cores. Para criar um gradiente radial, use a função radial-gradient() como valor para a propriedade background-image.

Exemplo: Criando um gradiente radial

.radial-gradient {
  background-image: radial-gradient(circle, blue, green);
}

Neste exemplo, começa com azul no centro e muda para verde em direção às bordas. Você pode especificar sua forma usando palavras-chave como circle ou ellipse. Você também pode definir seu tamanho e posição.

Exemplo: Gradiente radial com múltiplas cores e posição

.radial-gradient-multiple {
  background-image: radial-gradient(circle at top left, red, yellow, green);
}

Este exemplo cria um gradiente começando com vermelho no canto superior esquerdo que muda para amarelo e termina em verde em direção às bordas.

Exemplos de Criação de Gradientes em CSS

Aqui estão mais alguns exemplos:

Exemplo: Gradiente linear com transparência

.linear-gradient-transparent { 
  background-image: linear-gradient(to right, rgba(255, 0, 0, 0.5), rgba(0, 0, 255, 0.5)); 
} 

Exemplo: Gradiente linear repetitivo

.repeating-linear-gradient {   
  background-image: repeating-linear-gradient(45deg, red 10px, blue 20px);    
}  

Exemplo: Gradiente radial com forma e posição personalizada

.radial-gradient-custom {     
  background-image: radial-gradient(ellipse, yellow, green, blue);      
}    

Gradientes são recursos úteis em CSS que ajudam a criar fundos atraentes para botões, seções, fundos de página inteira e muito mais. Com a flexibilidade oferecida por ambos os tipos, junto com a capacidade de controlar propriedades como posições de cores e transparência, muitos efeitos criativos são possíveis em suas páginas web.

Paleta de Cores e Esquemas

As paletas e esquemas de cores têm um papel fundamental no design de sites. Uma paleta de cores bem escolhida pode dar um aspecto profissional ao seu site, evocar as emoções certas e criar uma experiência visual coesa para seus usuários. Ao selecionar cores para seu site, considere o propósito, a identidade visual e o público-alvo.

Existem vários tipos de esquemas de cores que você pode usar para criar um design harmonioso:

Monocromático

Um esquema de cores monocromático usa diferentes tons, matizes e variações de uma única cor. Ele cria um visual uniforme e agradável aos olhos. Para criar esse esquema, escolha uma cor base e use suas variações mais claras e escuras.

Complementar

Um esquema de cores complementar usa cores opostas na roda de cores. Essas cores criam alto contraste, mas devem ser usadas com cuidado para evitar tensão visual. Exemplos incluem azul e laranja, vermelho e verde, ou roxo e amarelo.

Triádico

Um esquema de cores triádico usa três cores distribuídas uniformemente na roda de cores. Esse esquema cria um visual equilibrado. Para criá-lo, escolha uma cor principal e desenhe um triângulo equilátero na roda para encontrar as outras duas cores.

Ao criar uma paleta para seu site, algumas ferramentas podem ajudar a gerar esquemas com base em suas preferências:

  • Adobe Color: Esta ferramenta permite criar esquemas baseados em diferentes regras, como monocromático ou complementar.
  • Coolors: Coolors é rápido e fácil de usar para gerar paletas aleatórias ou ajustar cores individuais.
  • Paletton: Paletton permite criar esquemas baseados em modelos como monocromático ou triádico, com opções de ajuste fino.

Usando essas ferramentas e entendendo os diferentes tipos de esquemas, você pode criar paletas atraentes para seus designs de sites, considerando a mensagem da marca e a experiência do usuário ao escolher suas cores, experimentando até encontrar a paleta perfeita para o site.