<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arquivos modelos de cor css - Web-Zoneware</title>
	<atom:link href="https://webzoneware.com/tag/modelos-de-cor-css/feed/" rel="self" type="application/rss+xml" />
	<link>https://webzoneware.com/tag/modelos-de-cor-css/</link>
	<description>Mais do que apenas uma academia web.</description>
	<lastBuildDate>Wed, 21 Oct 2026 02:08:42 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://webzoneware.com/wp-content/uploads/icon-webzoneware-150x150.png</url>
	<title>Arquivos modelos de cor css - Web-Zoneware</title>
	<link>https://webzoneware.com/tag/modelos-de-cor-css/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Valores de Cor no HTML: Modelos e Espaços &#124; Web Academy</title>
		<link>https://webzoneware.com/web-academy/curso-html/valores-de-cor-e-modelos/</link>
					<comments>https://webzoneware.com/web-academy/curso-html/valores-de-cor-e-modelos/#respond</comments>
		
		<dc:creator><![CDATA[Web-Zoneware]]></dc:creator>
		<pubDate>Wed, 21 Oct 2026 02:08:42 +0000</pubDate>
				<category><![CDATA[Curso de HTML & HTML5]]></category>
		<category><![CDATA[display p3 css]]></category>
		<category><![CDATA[espacos de cor css]]></category>
		<category><![CDATA[modelos de cor css]]></category>
		<category><![CDATA[oklch css]]></category>
		<category><![CDATA[rgb vs hsl]]></category>
		<category><![CDATA[valores de cor html]]></category>
		<category><![CDATA[web academy]]></category>
		<guid isPermaLink="false">https://webzoneware.com/?p=29303</guid>

					<description><![CDATA[<p>No desenvolvimento web contemporâneo, a representação de cores ultrapassou os limites dos códigos hexadecimais tradicionais. Compreender a diferença entre modelos de cor (como RGB e HSL), notações sintáticas modernas do CSS Color Module Level 4 e espaços cromáticos avançados (como sRGB, Display P3 e OKLCH) é indispensável para construir interfaces com fidelidade visual perfeita em [&#8230;]</p>
<p>O post <a href="https://webzoneware.com/web-academy/curso-html/valores-de-cor-e-modelos/">Valores de Cor no HTML: Modelos e Espaços | Web Academy</a> apareceu primeiro em <a href="https://webzoneware.com">Web-Zoneware</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wzw-lesson-lead">No desenvolvimento web contemporâneo, a representação de cores ultrapassou os limites dos códigos hexadecimais tradicionais. Compreender a diferença entre <strong>modelos de cor</strong> (como RGB e HSL), <strong>notações sintáticas modernas</strong> do CSS Color Module Level 4 e <strong>espaços cromáticos avançados</strong> (como sRGB, Display P3 e OKLCH) é indispensável para construir interfaces com fidelidade visual perfeita em telas OLED, monitores Apple Retina e displays de alta gama de cores.</p>
<h2>1. Modelo vs Notação vs Espaço de Cor: Três Conceitos Distintos</h2>
<p>Muitos desenvolvedores confundem esses três conceitos fundamentais. Para dominar a engenharia de cores no front-end, é preciso separá-los claramente:</p>
<ul>
<li><strong>Modelo de Cor (Color Model):</strong> É a estrutura matemática ou conceitual que define como uma cor é composta. Exemplo: o modelo <strong>RGB</strong> combina Luz Vermelha, Verde e Azul; o modelo <strong>HSL</strong> organiza as cores em um cilindro de Matiz, Saturação e Luminosidade.</li>
<li><strong>Notação Sintática (Color Syntax):</strong> É a forma textual como declaramos a cor no código. Por exemplo, <code>#38bdf8</code>, <code>rgb(56 189 248)</code> e <code>hsl(198 93% 60%)</code> são notações diferentes para representar exatamente o mesmo ponto cromático.</li>
<li><strong>Espaço de Cor / Gama (Color Gamut):</strong> É a amplitude física total de cores que um monitor ou dispositivo consegue de fato reproduzir. O padrão histórico da web é o <strong>sRGB</strong> (criado em 1996). Telas modernas suportam o espaço <strong>Display P3</strong>, que exibe até 50% mais tons de verde e vermelho do que o sRGB clássico.</li>
</ul>
<div class="wzw-callout wzw-callout-info">
    <span class="wzw-callout-icon">💡</span></p>
<div class="wzw-callout-text">
        <strong>A Diferença Prática:</strong> Um código HEX tradicional (<code>#FF0000</code>) está confinado ao espaço sRGB. Mesmo que o usuário possua um monitor topo de linha com tela OLED ou Retina, o navegador não consegue exibir o vermelho mais puro que o display é capaz de emitir a menos que utilizemos uma função de espaço estendido, como <code>color(display-p3 1 0 0)</code> ou <code>oklch()</code>.
    </div>
</div>
<h2>2. A Nova Sintaxe CSS Color 4: Espaços e Barra para o Canal Alfa</h2>
<p>Historicamente, o CSS utilizava vírgulas para separar canais e requeria uma função diferente para transparência (<code>rgba()</code> e <code>hsla()</code>). A especificação moderna <em>CSS Color Module Level 4</em> unificou todas as funções cromáticas sob uma sintaxe mais limpa e consistente:</p>
<div class="wzw-table-responsive">
<table class="wzw-table">
<thead>
<tr>
<th style="width: 160px;">Modelo</th>
<th>Sintaxe Legada (com vírgulas)</th>
<th>Sintaxe Moderna Padronizada</th>
<th>Com Transparência Alfa</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>RGB</strong></td>
<td><code>rgb(15, 23, 42)</code></td>
<td><code>rgb(15 23 42)</code></td>
<td><code>rgb(15 23 42 / 0.8)</code> ou <code>rgb(15 23 42 / 80%)</code></td>
</tr>
<tr>
<td><strong>HSL</strong></td>
<td><code>hsl(215, 28%, 17%)</code></td>
<td><code>hsl(215 28% 17%)</code></td>
<td><code>hsl(215 28% 17% / 0.65)</code></td>
</tr>
<tr>
<td><strong>HWB</strong></td>
<td><em>(Não suportado em navegadores antigos)</em></td>
<td><code>hwb(215 15% 40%)</code></td>
<td><code>hwb(215 15% 40% / 0.5)</code></td>
</tr>
<tr>
<td><strong>OKLCH</strong></td>
<td><em>(Exclusivo do CSS Moderno)</em></td>
<td><code>oklch(0.65 0.22 250)</code></td>
<td><code>oklch(0.65 0.22 250 / 0.9)</code></td>
</tr>
</tbody>
</table>
</div>
<p>Na sintaxe moderna, você pode omitir as vírgulas usando apenas espaços em branco para separar os canais principais, e uma barra diagonal (<code>/</code>) para indicar a opacidade (canal alfa), podendo expressar o alfa em decimal (<code>0.5</code>) ou em porcentagem (<code>50%</code>).</p>
<h2>3. Por Que o Modelo HSL Tem Falhas Perceptivas?</h2>
<p>O modelo HSL foi muito celebrado nos anos 2000 por ser intuitivo para seres humanos. No entanto, ele sofre de um problema grave conhecido como <strong>não-uniformidade perceptiva</strong>.</p>
<p>Para o olho humano, a cor amarela é biologicamente muito mais brilhante do que a cor azul. No entanto, se você definir um amarelo puro em HSL com 50% de luminosidade (<code>hsl(60 100% 50%)</code>) e um azul puro também com 50% de luminosidade (<code>hsl(240 100% 50%)</code>), o computador diz que ambos têm a mesma luz, mas para a visão humana o amarelo parece ofuscante e o azul parece escuro e pesado.</p>
<div class="wzw-callout wzw-callout-pro">
    <span class="wzw-callout-icon">⚠️</span></p>
<div class="wzw-callout-text">
        <strong>O Impacto em Botões e Textos:</strong> Se você colocar texto branco sobre <code>hsl(60 100% 50%)</code> (amarelo), ele se torna ilegível (falha na WCAG). Se colocar texto branco sobre <code>hsl(240 100% 50%)</code> (azul), o contraste é excelente. O HSL mascara a luminosidade real percebida pelo cérebro humano.
    </div>
</div>
<h2>4. A Revolução do OKLCH: Cores Perceptualmente Uniformes</h2>
<p>Para resolver em definitivo as distorções do HSL, o W3C padronizou o modelo <strong>OKLCH</strong> no CSS Color 4. Ele é composto por três coordenadas:</p>
<ul>
<li><strong>L (Lightness &#8211; Luminosidade Perceptiva):</strong> Vai de <code>0%</code> (preto absoluto) a <code>100%</code> (branco absoluto). Dois elementos com o mesmo valor de <code>L</code> terão <em>rigorosamente a mesma sensação de claridade</em> aos olhos humanos, não importando se são verdes, amarelos ou azuis.</li>
<li><strong>C (Chroma &#8211; Croma / Vivacidade):</strong> Mede a pureza ou saturação da cor. Começa em <code>0</code> (cinza neutro) e tipicamente chega até <code>0.37</code> em cores ultrassaturadas.</li>
<li><strong>H (Hue &#8211; Matiz / Ângulo):</strong> O círculo cromático de <code>0</code> a <code>360</code> graus (0 = rosa avermelhado, 90 = amarelo, 140 = verde, 240 = azul).</li>
</ul>
<div class="wzw-code-wrapper">
<div class="wzw-code-header">
        <span>CSS3/CSS4 — Exemplo de Sintaxe OKLCH</span><br />
        <span>cores-oklch.css</span>
    </div>
    <div class="wzw-ide-card" id="wzw-code-31134" data-lang="code">
        <div class="wzw-ide-header">
            <div class="wzw-ide-dots" aria-hidden="true">
                <span class="wzw-dot wzw-dot-red"></span>
                <span class="wzw-dot wzw-dot-amber"></span>
                <span class="wzw-dot wzw-dot-green"></span>
            </div>
            <div class="wzw-ide-meta">
                <span class="wzw-ide-lang-badge">CSS</span>
                                <span class="wzw-ide-lines-count">11 linhas</span>
            </div>
            <div class="wzw-ide-actions">
                <button type="button" class="wzw-ide-btn wzw-ide-wrap-btn" onclick="wzwToggleCodeWrap('wzw-code-31134', this)" title="Alternar quebra automática de linhas">
                    ⇄ Wrap
                </button>
                <button type="button" class="wzw-ide-btn wzw-ide-copy-btn" onclick="wzwCopyCodeBlock('wzw-code-31134', this)" aria-label="Copiar código para a área de transferência">
                    📋 <span class="wzw-copy-text">Copiar Código</span>
                </button>
            </div>
        </div>
        <div class="wzw-ide-body">
            <pre class="wzw-ide-pre" tabindex="0"><code class="wzw-ide-code"><span class="wzw-code-line"><span class="wzw-tk-comment">/* Azul elétrico perfeito para botões de CTA */</span></span>
<span class="wzw-code-line">.btn-moderno {</span>
<span class="wzw-code-line">    <span class="wzw-tk-attr">background-color</span>: oklch(0.6 0.22 250);</span>
<span class="wzw-code-line">    <span class="wzw-tk-attr">color</span>: white;</span>
<span class="wzw-code-line">}</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line"><span class="wzw-tk-comment">/* Tom de alerta com exatamente a mesma luminosidade perceptual (0.6) */</span></span>
<span class="wzw-code-line">.btn-alerta {</span>
<span class="wzw-code-line">    <span class="wzw-tk-attr">background-color</span>: oklch(0.6 0.22 30);</span>
<span class="wzw-code-line">    <span class="wzw-tk-attr">color</span>: white;</span>
<span class="wzw-code-line">}</span>
</code></pre>
            <textarea class="wzw-ide-raw" aria-hidden="true" tabindex="-1" readonly>/* Azul elétrico perfeito para botões de CTA */
.btn-moderno {
    background-color: oklch(0.6 0.22 250);
    color: white;
}

/* Tom de alerta com exatamente a mesma luminosidade perceptual (0.6) */
.btn-alerta {
    background-color: oklch(0.6 0.22 30);
    color: white;
}</textarea>
        </div>
    </div>
    
</div>
<h2>5. Display P3 e Wide Gamut: Cores Além do sRGB Tradicional</h2>
<p>Monitores modernos de smartphones (iPhones, telas AMOLED Samsung) e notebooks de alta resolução cobrem o espaço de cor <strong>Display P3</strong>. Para acessar essa gama estendida no CSS nativo, usamos a função <code>color(display-p3 r g b)</code>:</p>
<div class="wzw-code-wrapper">
<div class="wzw-code-header">
        <span>CSS3/CSS4 — Ativando Cores Wide Gamut no Display P3</span><br />
        <span>wide-gamut.css</span>
    </div>
    <div class="wzw-ide-card" id="wzw-code-27589" data-lang="code">
        <div class="wzw-ide-header">
            <div class="wzw-ide-dots" aria-hidden="true">
                <span class="wzw-dot wzw-dot-red"></span>
                <span class="wzw-dot wzw-dot-amber"></span>
                <span class="wzw-dot wzw-dot-green"></span>
            </div>
            <div class="wzw-ide-meta">
                <span class="wzw-ide-lang-badge">CSS</span>
                                <span class="wzw-ide-lines-count">11 linhas</span>
            </div>
            <div class="wzw-ide-actions">
                <button type="button" class="wzw-ide-btn wzw-ide-wrap-btn" onclick="wzwToggleCodeWrap('wzw-code-27589', this)" title="Alternar quebra automática de linhas">
                    ⇄ Wrap
                </button>
                <button type="button" class="wzw-ide-btn wzw-ide-copy-btn" onclick="wzwCopyCodeBlock('wzw-code-27589', this)" aria-label="Copiar código para a área de transferência">
                    📋 <span class="wzw-copy-text">Copiar Código</span>
                </button>
            </div>
        </div>
        <div class="wzw-ide-body">
            <pre class="wzw-ide-pre" tabindex="0"><code class="wzw-ide-code"><span class="wzw-code-line"><span class="wzw-tk-comment">/* Verde comum no espaço sRGB */</span></span>
<span class="wzw-code-line">.card-padrao {</span>
<span class="wzw-code-line">    <span class="wzw-tk-attr">border-color</span>: rgb(0 255 0);</span>
<span class="wzw-code-line">}</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line"><span class="wzw-tk-comment">/* Verde ultrabrilhante que telas P3 conseguem emitir */</span></span>
<span class="wzw-code-line"><span class="wzw-tk-kw">@supports</span> (color: color(display-p3 0 1 0)) {</span>
<span class="wzw-code-line">    .card-padrao {</span>
<span class="wzw-code-line">        <span class="wzw-tk-attr">border-color</span>: color(display-p3 0 1 0);</span>
<span class="wzw-code-line">    }</span>
<span class="wzw-code-line">}</span>
</code></pre>
            <textarea class="wzw-ide-raw" aria-hidden="true" tabindex="-1" readonly>/* Verde comum no espaço sRGB */
.card-padrao {
    border-color: rgb(0 255 0);
}

/* Verde ultrabrilhante que telas P3 conseguem emitir */
@supports (color: color(display-p3 0 1 0)) {
    .card-padrao {
        border-color: color(display-p3 0 1 0);
    }
}</textarea>
        </div>
    </div>
    
</div>
<h2>6. Exemplo Prático: Comparando Modelos e Sintaxes no Código</h2>
<p>O exemplo interativo a seguir constrói um laboratório de visualização onde diferentes notações e modelos são confrontados lado a lado:</p>
<div class="wzw-code-wrapper">
<div class="wzw-code-header">
        <span>HTML5 + CSS3 — Laboratório Comparativo de Modelos Cromáticos</span><br />
        <span>comparador-modelos.html</span>
    </div>
    <div class="wzw-ide-card" id="wzw-code-17484" data-lang="code">
        <div class="wzw-ide-header">
            <div class="wzw-ide-dots" aria-hidden="true">
                <span class="wzw-dot wzw-dot-red"></span>
                <span class="wzw-dot wzw-dot-amber"></span>
                <span class="wzw-dot wzw-dot-green"></span>
            </div>
            <div class="wzw-ide-meta">
                <span class="wzw-ide-lang-badge">HTML</span>
                                <span class="wzw-ide-lines-count">120 linhas</span>
            </div>
            <div class="wzw-ide-actions">
                <button type="button" class="wzw-ide-btn wzw-ide-wrap-btn" onclick="wzwToggleCodeWrap('wzw-code-17484', this)" title="Alternar quebra automática de linhas">
                    ⇄ Wrap
                </button>
                <button type="button" class="wzw-ide-btn wzw-ide-copy-btn" onclick="wzwCopyCodeBlock('wzw-code-17484', this)" aria-label="Copiar código para a área de transferência">
                    📋 <span class="wzw-copy-text">Copiar Código</span>
                </button>
            </div>
        </div>
        <div class="wzw-ide-body">
            <pre class="wzw-ide-pre" tabindex="0"><code class="wzw-ide-code"><span class="wzw-code-line"><span class="wzw-tk-tag">&lt;!DOCTYPE</span><span class="wzw-tk-kw"> html</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line"><span class="wzw-tk-tag">&lt;html</span> <span class="wzw-tk-attr">lang</span>=<span class="wzw-tk-str">&quot;pt-BR&quot;</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line"><span class="wzw-tk-tag">&lt;head&gt;</span></span>
<span class="wzw-code-line">    <span class="wzw-tk-tag">&lt;meta</span> <span class="wzw-tk-attr">charset</span>=<span class="wzw-tk-str">&quot;UTF-8&quot;</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line">    <span class="wzw-tk-tag">&lt;title&gt;</span>Laboratório de Modelos de Cor CSS<span class="wzw-tk-tag">&lt;/title&gt;</span></span>
<span class="wzw-code-line">    <span class="wzw-tk-tag">&lt;style&gt;</span></span>
<span class="wzw-code-line">        body {</span>
<span class="wzw-code-line">            font-family: -apple-system, BlinkMacSystemFont, &quot;Segoe UI&quot;, Roboto, sans-serif;</span>
<span class="wzw-code-line">            background-color: #0f172a;</span>
<span class="wzw-code-line">            color: #f8fafc;</span>
<span class="wzw-code-line">            padding: 30px;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        .container {</span>
<span class="wzw-code-line">            max-width: 860px;</span>
<span class="wzw-code-line">            margin: 0 auto;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        .grid-modelos {</span>
<span class="wzw-code-line">            display: grid;</span>
<span class="wzw-code-line">            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));</span>
<span class="wzw-code-line">            gap: 18px;</span>
<span class="wzw-code-line">            margin-top: 24px;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        .card-cor {</span>
<span class="wzw-code-line">            border-radius: 12px;</span>
<span class="wzw-code-line">            padding: 24px 18px;</span>
<span class="wzw-code-line">            text-align: center;</span>
<span class="wzw-code-line">            box-shadow: 0 10px 25px rgba(0,0,0,0.3);</span>
<span class="wzw-code-line">            border: 1px solid rgba(255, 255, 255, 0.1);</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        .card-cor strong {</span>
<span class="wzw-code-line">            display: block;</span>
<span class="wzw-code-line">            font-size: 16px;</span>
<span class="wzw-code-line">            margin-bottom: 6px;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        .card-cor code {</span>
<span class="wzw-code-line">            font-size: 12px;</span>
<span class="wzw-code-line">            background: rgba(0, 0, 0, 0.4);</span>
<span class="wzw-code-line">            padding: 3px 6px;</span>
<span class="wzw-code-line">            border-radius: 4px;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        <span class="wzw-tk-comment">/* 1. Hexadecimal Tradicional */</span></span>
<span class="wzw-code-line">        .box-hex {</span>
<span class="wzw-code-line">            background-color: #0284c7;</span>
<span class="wzw-code-line">            color: #ffffff;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        <span class="wzw-tk-comment">/* 2. RGB Moderno (sem vírgulas) */</span></span>
<span class="wzw-code-line">        .box-rgb {</span>
<span class="wzw-code-line">            background-color: rgb(2 132 199);</span>
<span class="wzw-code-line">            color: #ffffff;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        <span class="wzw-tk-comment">/* 3. HSL com Transparência Alfa */</span></span>
<span class="wzw-code-line">        .box-hsl {</span>
<span class="wzw-code-line">            background-color: hsl(200 98% 39% / 85%);</span>
<span class="wzw-code-line">            color: #ffffff;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        <span class="wzw-tk-comment">/* 4. OKLCH Perceptual */</span></span>
<span class="wzw-code-line">        .box-oklch {</span>
<span class="wzw-code-line">            background-color: oklch(0.58 0.16 230);</span>
<span class="wzw-code-line">            color: #ffffff;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        .barra-gradiente {</span>
<span class="wzw-code-line">            margin-top: 32px;</span>
<span class="wzw-code-line">            height: 48px;</span>
<span class="wzw-code-line">            border-radius: 8px;</span>
<span class="wzw-code-line">            background: linear-gradient(to right in oklch, oklch(0.6 0.25 30), oklch(0.7 0.2 140), oklch(0.6 0.22 250));</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        .gradiente-legenda {</span>
<span class="wzw-code-line">            font-size: 12px;</span>
<span class="wzw-code-line">            color: #94a3b8;</span>
<span class="wzw-code-line">            margin-top: 8px;</span>
<span class="wzw-code-line">            text-align: center;</span>
<span class="wzw-code-line">        }</span>
<span class="wzw-code-line">    <span class="wzw-tk-tag">&lt;/style&gt;</span></span>
<span class="wzw-code-line"><span class="wzw-tk-tag">&lt;/head&gt;</span></span>
<span class="wzw-code-line"><span class="wzw-tk-tag">&lt;body&gt;</span></span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">    <span class="wzw-tk-tag">&lt;div</span> <span class="wzw-tk-attr">class</span>=<span class="wzw-tk-str">&quot;container&quot;</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line">        <span class="wzw-tk-tag">&lt;h2</span> <span class="wzw-tk-attr">style</span>=<span class="wzw-tk-str">&quot;color: #38bdf8; margin: 0 0 10px;&quot;</span><span class="wzw-tk-tag">&gt;</span>O Mesmo Ponto de Azul em 4 Modelos Distintos<span class="wzw-tk-tag">&lt;/h2&gt;</span></span>
<span class="wzw-code-line">        <span class="wzw-tk-tag">&lt;p</span> <span class="wzw-tk-attr">style</span>=<span class="wzw-tk-str">&quot;color: #94a3b8;&quot;</span><span class="wzw-tk-tag">&gt;</span>Compare como a mesma tonalidade de azul é expressa em diferentes notações sintáticas:<span class="wzw-tk-tag">&lt;/p&gt;</span></span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        <span class="wzw-tk-tag">&lt;div</span> <span class="wzw-tk-attr">class</span>=<span class="wzw-tk-str">&quot;grid-modelos&quot;</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line">            <span class="wzw-tk-tag">&lt;div</span> <span class="wzw-tk-attr">class</span>=<span class="wzw-tk-str">&quot;card-cor box-hex&quot;</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line">                <span class="wzw-tk-tag">&lt;strong&gt;</span>Hexadecimal<span class="wzw-tk-tag">&lt;/strong&gt;</span></span>
<span class="wzw-code-line">                <span class="wzw-tk-tag">&lt;code&gt;</span>#0284c7<span class="wzw-tk-tag">&lt;/code&gt;</span></span>
<span class="wzw-code-line">            <span class="wzw-tk-tag">&lt;/div&gt;</span></span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">            <span class="wzw-tk-tag">&lt;div</span> <span class="wzw-tk-attr">class</span>=<span class="wzw-tk-str">&quot;card-cor box-rgb&quot;</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line">                <span class="wzw-tk-tag">&lt;strong&gt;</span>RGB Moderno<span class="wzw-tk-tag">&lt;/strong&gt;</span></span>
<span class="wzw-code-line">                <span class="wzw-tk-tag">&lt;code&gt;</span>rgb(2 132 199)<span class="wzw-tk-tag">&lt;/code&gt;</span></span>
<span class="wzw-code-line">            <span class="wzw-tk-tag">&lt;/div&gt;</span></span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">            <span class="wzw-tk-tag">&lt;div</span> <span class="wzw-tk-attr">class</span>=<span class="wzw-tk-str">&quot;card-cor box-hsl&quot;</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line">                <span class="wzw-tk-tag">&lt;strong&gt;</span>HSL com Alfa<span class="wzw-tk-tag">&lt;/strong&gt;</span></span>
<span class="wzw-code-line">                <span class="wzw-tk-tag">&lt;code&gt;</span>hsl(200 98% 39% / 85%)<span class="wzw-tk-tag">&lt;/code&gt;</span></span>
<span class="wzw-code-line">            <span class="wzw-tk-tag">&lt;/div&gt;</span></span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">            <span class="wzw-tk-tag">&lt;div</span> <span class="wzw-tk-attr">class</span>=<span class="wzw-tk-str">&quot;card-cor box-oklch&quot;</span><span class="wzw-tk-tag">&gt;</span></span>
<span class="wzw-code-line">                <span class="wzw-tk-tag">&lt;strong&gt;</span>OKLCH Perceptual<span class="wzw-tk-tag">&lt;/strong&gt;</span></span>
<span class="wzw-code-line">                <span class="wzw-tk-tag">&lt;code&gt;</span>oklch(0.58 0.16 230)<span class="wzw-tk-tag">&lt;/code&gt;</span></span>
<span class="wzw-code-line">            <span class="wzw-tk-tag">&lt;/div&gt;</span></span>
<span class="wzw-code-line">        <span class="wzw-tk-tag">&lt;/div&gt;</span></span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line">        <span class="wzw-tk-tag">&lt;h3</span> <span class="wzw-tk-attr">style</span>=<span class="wzw-tk-str">&quot;color: #f1f5f9; margin-top: 36px;&quot;</span><span class="wzw-tk-tag">&gt;</span>Gradiente com Interpolação OKLCH (Sem &quot;Banda Cinza&quot;)<span class="wzw-tk-tag">&lt;/h3&gt;</span></span>
<span class="wzw-code-line">        <span class="wzw-tk-tag">&lt;div</span> <span class="wzw-tk-attr">class</span>=<span class="wzw-tk-str">&quot;barra-gradiente&quot;</span><span class="wzw-tk-tag">&gt;</span><span class="wzw-tk-tag">&lt;/div&gt;</span></span>
<span class="wzw-code-line">        <span class="wzw-tk-tag">&lt;p</span> <span class="wzw-tk-attr">class</span>=<span class="wzw-tk-str">&quot;gradiente-legenda&quot;</span><span class="wzw-tk-tag">&gt;</span>A interpolação <span class="wzw-tk-tag">&lt;code&gt;</span>in oklch<span class="wzw-tk-tag">&lt;/code&gt;</span> impede que a transição entre cores opostas fique acinzentada e sem vida.<span class="wzw-tk-tag">&lt;/p&gt;</span></span>
<span class="wzw-code-line">    <span class="wzw-tk-tag">&lt;/div&gt;</span></span>
<span class="wzw-code-line">&nbsp;</span>
<span class="wzw-code-line"><span class="wzw-tk-tag">&lt;/body&gt;</span></span>
<span class="wzw-code-line"><span class="wzw-tk-tag">&lt;/html&gt;</span></span>
</code></pre>
            <textarea class="wzw-ide-raw" aria-hidden="true" tabindex="-1" readonly>&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;pt-BR&quot;&gt;
&lt;head&gt;
    &lt;meta charset=&quot;UTF-8&quot;&gt;
    &lt;title&gt;Laboratório de Modelos de Cor CSS&lt;/title&gt;
    &lt;style&gt;
        body {
            font-family: -apple-system, BlinkMacSystemFont, &quot;Segoe UI&quot;, Roboto, sans-serif;
            background-color: #0f172a;
            color: #f8fafc;
            padding: 30px;
        }

        .container {
            max-width: 860px;
            margin: 0 auto;
        }

        .grid-modelos {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 18px;
            margin-top: 24px;
        }

        .card-cor {
            border-radius: 12px;
            padding: 24px 18px;
            text-align: center;
            box-shadow: 0 10px 25px rgba(0,0,0,0.3);
            border: 1px solid rgba(255, 255, 255, 0.1);
        }

        .card-cor strong {
            display: block;
            font-size: 16px;
            margin-bottom: 6px;
        }

        .card-cor code {
            font-size: 12px;
            background: rgba(0, 0, 0, 0.4);
            padding: 3px 6px;
            border-radius: 4px;
        }

        /* 1. Hexadecimal Tradicional */
        .box-hex {
            background-color: #0284c7;
            color: #ffffff;
        }

        /* 2. RGB Moderno (sem vírgulas) */
        .box-rgb {
            background-color: rgb(2 132 199);
            color: #ffffff;
        }

        /* 3. HSL com Transparência Alfa */
        .box-hsl {
            background-color: hsl(200 98% 39% / 85%);
            color: #ffffff;
        }

        /* 4. OKLCH Perceptual */
        .box-oklch {
            background-color: oklch(0.58 0.16 230);
            color: #ffffff;
        }

        .barra-gradiente {
            margin-top: 32px;
            height: 48px;
            border-radius: 8px;
            background: linear-gradient(to right in oklch, oklch(0.6 0.25 30), oklch(0.7 0.2 140), oklch(0.6 0.22 250));
        }

        .gradiente-legenda {
            font-size: 12px;
            color: #94a3b8;
            margin-top: 8px;
            text-align: center;
        }
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;

    &lt;div class=&quot;container&quot;&gt;
        &lt;h2 style=&quot;color: #38bdf8; margin: 0 0 10px;&quot;&gt;O Mesmo Ponto de Azul em 4 Modelos Distintos&lt;/h2&gt;
        &lt;p style=&quot;color: #94a3b8;&quot;&gt;Compare como a mesma tonalidade de azul é expressa em diferentes notações sintáticas:&lt;/p&gt;

        &lt;div class=&quot;grid-modelos&quot;&gt;
            &lt;div class=&quot;card-cor box-hex&quot;&gt;
                &lt;strong&gt;Hexadecimal&lt;/strong&gt;
                &lt;code&gt;#0284c7&lt;/code&gt;
            &lt;/div&gt;

            &lt;div class=&quot;card-cor box-rgb&quot;&gt;
                &lt;strong&gt;RGB Moderno&lt;/strong&gt;
                &lt;code&gt;rgb(2 132 199)&lt;/code&gt;
            &lt;/div&gt;

            &lt;div class=&quot;card-cor box-hsl&quot;&gt;
                &lt;strong&gt;HSL com Alfa&lt;/strong&gt;
                &lt;code&gt;hsl(200 98% 39% / 85%)&lt;/code&gt;
            &lt;/div&gt;

            &lt;div class=&quot;card-cor box-oklch&quot;&gt;
                &lt;strong&gt;OKLCH Perceptual&lt;/strong&gt;
                &lt;code&gt;oklch(0.58 0.16 230)&lt;/code&gt;
            &lt;/div&gt;
        &lt;/div&gt;

        &lt;h3 style=&quot;color: #f1f5f9; margin-top: 36px;&quot;&gt;Gradiente com Interpolação OKLCH (Sem &quot;Banda Cinza&quot;)&lt;/h3&gt;
        &lt;div class=&quot;barra-gradiente&quot;&gt;&lt;/div&gt;
        &lt;p class=&quot;gradiente-legenda&quot;&gt;A interpolação &lt;code&gt;in oklch&lt;/code&gt; impede que a transição entre cores opostas fique acinzentada e sem vida.&lt;/p&gt;
    &lt;/div&gt;

&lt;/body&gt;
&lt;/html&gt;</textarea>
        </div>
    </div>
    
<div class="wzw-playground-action-bar">
        <span class="wzw-playground-desc">Experimente alterar as coordenadas no nosso ambiente de código interativo:</span><br />
        <a href="/web-academy/playground-web/" class="wzw-btn-playground" target="_blank" rel="noopener">⚡ Testar no Playground IDE</a>
    </div>
</div>
<h2>7. Matriz de Decisão: Qual Notação Escolher no Front-End Moderno?</h2>
<p>Utilize esta matriz como guia arquitetural para os projetos da sua equipe:</p>
<div class="wzw-table-responsive">
<table class="wzw-table">
<thead>
<tr>
<th>Cenário de Desenvolvimento</th>
<th>Modelo / Notação Recomendada</th>
<th>Justificativa Técnica</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Design Tokens &#038; Cores de Marca</strong></td>
<td><code>#RRGGBB</code> (HEX) ou <code>oklch()</code></td>
<td>HEX oferece compatibilidade universal; OKLCH garante que as escalas tonais (50, 100, 200&#8230; 900) tenham passos de luminosidade matematicamente iguais.</td>
</tr>
<tr>
<td><strong>Gradientes de Alta Qualidade</strong></td>
<td><code>linear-gradient(in oklch, ...)</code></td>
<td>Evita a famosa &#8220;zona cinzenta morta&#8221; que ocorre no meio de gradientes calculados no espaço sRGB comum.</td>
</tr>
<tr>
<td><strong>Temas Dinâmicos (Dark / Light Mode)</strong></td>
<td><code>oklch()</code> ou <code>hsl()</code></td>
<td>Basta inverter ou remapear a variável de Luminosidade (<code>L</code>) mantendo a mesma matriz harmônica.</td>
</tr>
<tr>
<td><strong>E-mails Marketing HTML</strong></td>
<td><code>#RRGGBB</code> (HEX de 6 caracteres)</td>
<td>Clientes legados como Microsoft Outlook para Windows desktop só suportam código HEX clássico.</td>
</tr>
</tbody>
</table>
</div>
<h2>8. Boas Práticas, Fallbacks e Desempenho de Renderização</h2>
<ul>
<li><strong>Sempre Forneça Fallback para Telas Antigas:</strong> Se você adotar modelos de última geração como <code>oklch()</code> ou <code>color(display-p3 ...)</code> em elementos de destaque, declare uma propriedade tradicional antes para garantir que navegadores defasados continuem exibindo uma cor aceitável:
    <div class="wzw-ide-card" id="wzw-code-34832" data-lang="code">
        <div class="wzw-ide-header">
            <div class="wzw-ide-dots" aria-hidden="true">
                <span class="wzw-dot wzw-dot-red"></span>
                <span class="wzw-dot wzw-dot-amber"></span>
                <span class="wzw-dot wzw-dot-green"></span>
            </div>
            <div class="wzw-ide-meta">
                <span class="wzw-ide-lang-badge">CSS</span>
                                <span class="wzw-ide-lines-count">4 linhas</span>
            </div>
            <div class="wzw-ide-actions">
                <button type="button" class="wzw-ide-btn wzw-ide-wrap-btn" onclick="wzwToggleCodeWrap('wzw-code-34832', this)" title="Alternar quebra automática de linhas">
                    ⇄ Wrap
                </button>
                <button type="button" class="wzw-ide-btn wzw-ide-copy-btn" onclick="wzwCopyCodeBlock('wzw-code-34832', this)" aria-label="Copiar código para a área de transferência">
                    📋 <span class="wzw-copy-text">Copiar Código</span>
                </button>
            </div>
        </div>
        <div class="wzw-ide-body">
            <pre class="wzw-ide-pre" tabindex="0"><code class="wzw-ide-code"><span class="wzw-code-line">.hero-banner {</span>
<span class="wzw-code-line">    <span class="wzw-tk-attr">background-color</span>: <span class="wzw-tk-num">#0284c7</span>; /* Fallback universal */</span>
<span class="wzw-code-line">    <span class="wzw-tk-attr">background-color</span>: oklch(0.58 0.16 230); /* Navegadores modernos */</span>
<span class="wzw-code-line">}</span>
</code></pre>
            <textarea class="wzw-ide-raw" aria-hidden="true" tabindex="-1" readonly>.hero-banner {
    background-color: #0284c7; /* Fallback universal */
    background-color: oklch(0.58 0.16 230); /* Navegadores modernos */
}</textarea>
        </div>
    </div>
    
</li>
<li><strong>Audite Suas Imagens com Ferramentas do Ecossistema:</strong> Para descobrir as coordenadas cromáticas exatas de logotipos e layouts, utilize o <a href="/web-ferramentas/extrator-de-cores-de-imagens-online/" target="_blank" rel="noopener">Extrator de Paleta de Cores de Imagem</a> do Web-ZoneWare.</li>
<li><strong>Prefira a Sintaxe Moderna sem Vírgulas:</strong> A separação por espaços e barra de alfa (<code>rgb(0 0 0 / 50%)</code>) é o padrão oficial do W3C para todo o futuro do CSS.</li>
</ul>
<div class="wzw-callout wzw-callout-pro">
    <span class="wzw-callout-icon">🚀</span></p>
<div class="wzw-callout-text">
        <strong>Próximo Passo Didático:</strong> Concluído o bloco de cores, na <strong>Lição 22: Scripts JavaScript (&lt;script&gt;)</strong>, aprenderemos como o HTML carrega e executa código dinâmico, os impactos críticos dos atributos <code>defer</code> e <code>async</code> no Core Web Vitals e como evitar o bloqueio de renderização do DOM.
    </div>
</div>
<p>O post <a href="https://webzoneware.com/web-academy/curso-html/valores-de-cor-e-modelos/">Valores de Cor no HTML: Modelos e Espaços | Web Academy</a> apareceu primeiro em <a href="https://webzoneware.com">Web-Zoneware</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://webzoneware.com/web-academy/curso-html/valores-de-cor-e-modelos/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
