Contents

4 maneiras de definir cores em CSS

Conclusões principais

A utilização de nomes de cores predefinidos é uma abordagem conveniente oferecida pelas Folhas de estilo em cascata (CSS) para utilizadores principiantes com 145 tonalidades prontamente disponíveis para escolha. No entanto, este método apresenta determinadas restrições que podem não satisfazer os requisitos complexos de projectos de design avançados.

Os códigos de cor hexadecimais oferecem uma vasta gama de possibilidades de tonalidade, bem como personalizações altamente específicas, embora à custa de serem potencialmente mais difíceis de navegar e recordar em comparação com outros sistemas de notação de cor.

RGB e RGBA são dois métodos diferentes de representação de cores em meios digitais. Enquanto o RGB fornece controlo numérico sobre a precisão da cor, o RGBA também inclui um canal alfa que permite ajustes de transparência. É crucial garantir que os esquemas de cores utilizados em produtos digitais são acessíveis e cumprem as melhores práticas para acomodar utilizadores com deficiências ou preferências visuais.

A utilização de cores através de CSS é omnipresente no desenvolvimento Web, uma vez que influenciam significativamente o apelo estético e o ambiente de um site, ao mesmo tempo que afectam a sua usabilidade geral. É possível selecionar uma vasta gama de tonalidades a partir de CSS, satisfazendo diversas visões criativas e gostos individuais.

Embora o impacto da definição de cores num sítio Web possa não ser imediatamente aparente, as escolhas feitas em relação à sua implementação podem influenciar grandemente o aspeto visual geral e o apelo estético do sítio. Uma compreensão abrangente de diferentes metodologias e técnicas práticas para aplicar e combinar essas abordagens é essencial para criar designs web visualmente impressionantes.

Utilização de nomes de cores

O CSS oferece um método eficiente para definir matizes utilizando nomenclatura, com uma seleção abrangente de 145 opções de cores à disposição. Este espetro abrange designações básicas como “vermelho”, “verde” e “azul” a nuances mais refinadas, incluindo “coral” ou “lavanda”.

A utilização de tonalidades designadas apresenta um processo simples em que se selecciona uma designação de cor, como “vermelho”, e se incorpora numa propriedade CSS que reconhece as especificações do valor da cor. Estas propriedades abrangentes envolvem as aparentes, por exemplo “color” e “background-color”, mas também incluem alternativas como “border-color”, “outline-color” e “text-shadow”.

A utilização de nomes de cores pode ser vantajosa em situações em que são necessárias tonalidades provisórias, como durante as fases iniciais do desenvolvimento de protótipos ou quando se tenta manter um código legível. A sintaxe aplicável é a seguinte:

 color_property: color_name;

Neste caso, basta substituir o espaço reservadocolor\_name pela tonalidade específica que se pretende aplicar. Como ilustração, se alguém procurar atribuir a coloração do conteúdo textual de uma passagem tored, então a expressão seria a seguinte:

 p {
  color: red;
} 

De facto, ao empregar este método, é possível imbuir a sua prosa com uma tonalidade distinta que a distingue do que a rodeia.

/pt/images/screenshot-2023-09-29-121217.jpg

As vantagens da utilização das abreviaturas Emmet incluem a sua facilidade de compreensão no código CSS, uma vez que se destinam tanto a principiantes como a utilizadores avançados. Além disso, estas abreviaturas funcionam sem problemas em vários navegadores Web e servem como uma ferramenta prática para gerar conceitos de design rapidamente.

As desvantagens da utilização de ferramentas de seleção de cores baseadas na Web incluem a falta de opções de cores abrangentes que podem dificultar a expressão artística, bem como potenciais deficiências na adesão a normas de acessibilidade e compatibilidade inconsistente com tecnologia desactualizada.

Códigos de cor hexadecimais

Os códigos de cor hexadecimais, que são frequentemente denominados “códigos hexadecimais”, servem como meio predominante para delinear matizes no domínio do web design. Construídos a partir de conjuntos de seis caracteres que consistem em números e caracteres alfabéticos que abrangem o intervalo 0-9, A-F, estes códigos representam a composição proporcional dos elementos vermelho, verde e azul (RGB) que contribuem para o aspeto geral de uma determinada cor.

A utilização destes códigos de cores pode apresentar certas complexidades que requerem uma compreensão profunda dos seus princípios subjacentes. Para os interessados em aprofundar o assunto, uma exploração dos valores hexadecimais oferece informações valiosas. Como ilustração, considere a seguinte aplicação de códigos hexadecimais em CSS:

 color: #RRGGBB;

Neste esquema, os respectivos componentes para vermelho, verde e azul são indicados por RR, GG e BB. Estes componentes têm um intervalo possível que vai de 00, que significa nenhuma intensidade, a FF, que denota a intensidade máxima. A título de exemplo, para designar a tonalidade do cabeçalho de um sítio Web com um determinado tom de azul, pode utilizar-se um código hexadecimal como este:

 header {
  background-color: #336699;
}

Isto produzirá uma cor azul profunda:

/pt/images/screenshot-2023-09-29-125736.jpg

É possível utilizar uma abreviatura constituída por dois caracteres repetidos para cada elemento, como demonstrado no seguinte exemplo:

 header {
  background-color: #369;
} 

Os códigos de cor hexadecimais oferecem uma vasta gama de tonalidades, permitindo a criação de tons complexos e personalizados com facilidade. Estes códigos permitem uma manipulação perfeita das preferências de cor, tornando-os altamente adequados para especificações de design exigentes.

Embora os códigos hexadecimais sejam potentes, a sua falta de familiaridade em comparação com as tonalidades nomeadas pode constituir um obstáculo. Além disso, manter uma memória precisa do valor da cor pode ser complicado. No entanto, estão disponíveis recursos que facilitam a localização de tonalidades hexadecimais, atenuando assim, em certa medida, estes problemas.

Valores de cor RGB e RGBA

Este sistema permite designar matizes através dos seus constituintes vermelho, verde e azul, enquanto que, em contrapartida, emprega valores numéricos mais acessíveis em oposição aos códigos hexadecimais.

Valores de cor RGB

A utilização de valores de cor RGB é uma técnica predominante na estrutura das Folhas de Estilo em Cascata (CSS) para especificar tonalidades. A abreviatura “RGB” significa as cores primárias vermelho, verde e azul, que estão dispostas entre parênteses a seguir ao acrónimo. Dentro destes limites entre parênteses, é possível especificar valores numéricos que correspondem às intensidades relativas de cada canal de cor respetivo, abrangendo uma gama completa que vai de 0 a

Eis a sintaxe:

 rgb(red_value, green_value, blue_value);

Para atribuir valores numéricos específicos aos elementos de cor representados por “red\_value”, “green\_value” e “blue\_value” num determinado contexto, é possível recorrer a modelos de cor estabelecidos, como RGB ou HSL, em que cada valor representa um aspeto diferente do espetro de cores (por exemplo, intensidade, matiz ou saturação). Substituindo estes valores pelos parâmetros apropriados, é possível gerar várias tonalidades e tons de cores, incluindo opções acromáticas (branco), cromáticas (preto) e monocromáticas (uma única cor), semelhantes à representação visual aqui apresentada.

/pt/images/screenshot-2023-09-29-132447.jpg

A obtenção do máximo brilho para cada um dos canais de cor vermelho, verde e azul, que são capazes de exibir valores que variam de 0 a 255, é alcançada quando todos os três canais recebem, respetivamente, o valor máximo possível de 255. Esta combinação produz a tonalidade visualmente distinta conhecida como branco.

 .white-box {
 color: rgb(255, 255, 255);
}

A ausência total de qualquer tonalidade nos componentes vermelho, verde e azul de uma determinada imagem é denotada pela definição de cada canal de cor individual para o valor mais baixo possível de zero, o que produz subsequentemente uma aparência de escuridão em todo o espetro visual.

 .black-box {
  color: rgb(0, 0, 0);
}

Ajustar o componente vermelho numa imagem para o valor mais alto possível de 255 e manter valores zero para todos os outros componentes resulta numa tonalidade vibrante de vermelho:

 .red-box {
  color: rgb(255, 0, 0);
 }

Valores de cor RGBA

RGBA e RGB são semelhantes em função, sendo a principal distinção a incorporação de um canal alfa adicional em RGBA. Este “A” em RGBA significa o valor alfa, que regula o grau de translucidez ou opacidade associado à tonalidade selecionada. Um valor alfa de zero denota transparência total, fazendo com que a cor fique completamente oculta, enquanto um valor alfa de um simboliza opacidade absoluta, resultando na cor totalmente visível.

O RGBA fornece um meio versátil para criar elementos visuais que exibem vários graus de transparência, incluindo cenários translúcidos e tipografia suavizada. A expressão completa é composta por quatro componentes:

 color: rgba(red_value, green_value, blue_value, alpha_value);

Neste contexto, as variáveis indicadas por red\_value, green\_value e blue\_value referem-se aos respectivos canais de cor num espaço de cor RGB, enquanto alpha\_value significa o grau de translucidez associado a essa cor específica.

 div {
  background-color: rgba(0, 128, 0, 0.5);
}

A ilustração acima mencionada demonstra que um coeficiente alfa de 0,5 confere à tonalidade verde um nível de translucidez de 50%, permitindo assim a perceção da substância subjacente.

/pt/images/screenshot-2023-09-29-140651.jpg

O RGB e o RGBA oferecem um elevado grau de precisão na seleção de cores, facilitando a criação de designs visuais cativantes. Além disso, a sua compatibilidade com vários navegadores Web garante que as tonalidades desejadas permanecem consistentes em diferentes plataformas.

Navegar pelas complexidades da criação de designs inclusivos e visualmente apelativos, respeitando as normas de acessibilidade, pode ser uma tarefa assustadora. Um desafio particular surge da necessidade de manter níveis de contraste adequados entre elementos de primeiro plano e de fundo, especialmente quando se utiliza transparência através de valores RGBA. Felizmente, as Directrizes de Acessibilidade ao Conteúdo da Web (WCAG) fornecem uma estrutura valiosa para orientar os programadores e designers para práticas mais inclusivas, oferecendo recomendações sobre como criar conteúdo visual eficaz e acessível.

Valores de cor HSL e HSLA

/pt/images/irham-setyaki-dpajlleielc-unsplash-1.jpg

HSL é uma função CSS utilizada para definir cores através da utilização de valores numéricos para representar matizes, saturação e luminosidade. À semelhança do RGB, o HSL utiliza representações numéricas distintas destas propriedades de cor, que podem ser reconhecidas através de interfaces de utilizador em aplicações de design ou noutros contextos.

A tonalidade refere-se à cor espetral pura resultante da combinação de luz num comprimento de onda ou frequência específicos, normalmente medida em graus ao longo de um espetro circular, com 0 e 360 graus correspondentes ao vermelho, 120 graus ao verde e 240 graus ao azul. É frequentemente visualizado como um ponto num círculo, em que cada grau corresponde a uma tonalidade distinta na roda das cores.

O grau de saturação influencia a riqueza e a profundidade de uma cor, variando de uma escala de cinzentos sem brilho a zero por cento a uma tonalidade altamente vibrante e intensa a cem por cento.

O conceito de luminosidade diz respeito à luminância ou intensidade de uma tonalidade em relação à sua posição ao longo do continuum que vai da escuridão total (preto) à luminosidade máxima (branco). Com um nível de luminosidade de 50%, uma cor é considerada neutra, enquanto os valores inferiores a 50% resultam numa tonalidade mais escura e os superiores a 50% resultam numa tonalidade mais clara.

Para além do HSL, que representa os valores de matiz, saturação e luminosidade, existe outro espaço de cor conhecido como HSLA (representação hexadecimal de matiz, saturação, luminosidade e alfa). O “A” neste caso corresponde a “alfa”, análogo ao “A” encontrado nas representações RGBA que indicam níveis de transparência.

Aqui está a sintaxe:

 color: hsl(hue_value, saturation_percentage, lightness_percentage);

De uma forma mais refinada, para especificar valores particulares para cada elemento dentro da estrutura dada, substitua as variáveis hue_value , saturation_percentage , e lightness_percentage pelos valores desejados. Como ilustração, considere o seguinte trecho de código:

 div {
  background-color: hsl(120, 100%, 50%);
}

A presente instância demonstra a utilização de valores HSL para estabelecer a tonalidade viva de um componente, com 120 a representar a tonalidade em graus (associada a verde), 100% a corresponder à saturação máxima e 50% a definir a luminosidade para um estado uniformemente iluminado.

HSL e HSLA fornecem cálculos de cor flexíveis através de propriedades personalizadas CSS, o que os torna adequados para uma vasta gama de aplicações no desenvolvimento Web moderno. Além disso, a sua compatibilidade com os browsers contemporâneos assegura uma integração perfeita, ao mesmo tempo que permite modificações sem esforço na luminosidade da cor.

A desvantagem da utilização de HSL é o facto de exigir uma compreensão da teoria da cor, incluindo conceitos como matiz e saturação, que podem revelar-se mais complexos em comparação com o sistema RGB comummente conhecido.

Abraçar o poder das cores CSS

Ao aprofundar várias técnicas de especificação de matizes em CSS, é essencial ter em conta que se tem a capacidade de exercer uma influência significativa no atrativo visual, no ambiente e na interação geral com o utilizador da sua propriedade Web.

A seleção da representação da cor - abrangendo matizes básicos, valores hexadecimais, composições RGB ou formulações HSL - pode influenciar significativamente a perceção que o público tem de um sítio Web. Como tal, é prudente explorar, informar-se e determinar as representações de cores mais adequadas que se alinham com os objectivos de design.