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 purorgb(0, 255, 0)
representa verde purorgb(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 propriedadecolor
de um elemento. Permite herdar o valor de cor do elemento pai ou usar o valor de cor atual para outras propriedades comoborder-color
oubackground-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.
Análogo
Um esquema de cores análogo usa cores que estão próximas umas das outras na roda de cores. Essas cores criam uma combinação harmoniosa. Para criar esse esquema, escolha uma cor principal e use as cores diretamente à sua esquerda e direita.
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.