<?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>Let&#039;s make the WebPerfect.pl &#187; HSL</title>
	<atom:link href="http://www.webperfect.pl/tag/hsl/feed" rel="self" type="application/rss+xml" />
	<link>https://www.webperfect.pl</link>
	<description>Samodzielne tworzenie stron www, skrypty, css, html, grafika, zarabianie na stronach</description>
	<lastBuildDate>Sun, 29 Apr 2012 15:49:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<item>
		<title>Inne sposoby definiowania kolorów</title>
		<link>https://www.webperfect.pl/artykuly-ogolne/inne-sposoby-definiowania-kolorow.html</link>
		<comments>https://www.webperfect.pl/artykuly-ogolne/inne-sposoby-definiowania-kolorow.html#comments</comments>
		<pubDate>Sun, 10 Apr 2011 14:48:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Artykuły ogólne]]></category>
		<category><![CDATA[format kolorów]]></category>
		<category><![CDATA[grafika]]></category>
		<category><![CDATA[heksadecymalny]]></category>
		<category><![CDATA[hex]]></category>
		<category><![CDATA[HSB]]></category>
		<category><![CDATA[HSL]]></category>
		<category><![CDATA[kolory]]></category>
		<category><![CDATA[RGB]]></category>
		<category><![CDATA[system liczbowy]]></category>

		<guid isPermaLink="false">http://www.webperfect.pl/?p=262</guid>
		<description><![CDATA[Kolory możemy definiować na rozmaite sposoby. Najbardziej popularnym i najchętniej używanym sposobem określania koloru jest system HEX. Istnieją również inne sposoby na osiągnięcia takich samych lub podobnych rezultatów. Oprócz rozwiązań liczbowych istnieją jeszcze słowne oraz procentowe. O kolorach w systemie heksadecymalnym pisałem już w tym artykule: Kolory HEX. Jak je tworzyć i odczytywać? Paleta 16 [...]]]></description>
			<content:encoded><![CDATA[<p>Kolory możemy definiować na rozmaite sposoby. Najbardziej popularnym i najchętniej używanym sposobem określania koloru jest system HEX. Istnieją również inne sposoby na osiągnięcia takich samych lub podobnych rezultatów. Oprócz rozwiązań liczbowych istnieją jeszcze słowne oraz procentowe.<span id="more-262"></span></p>
<p>O kolorach w systemie heksadecymalnym pisałem już w tym artykule: <a title="Kolory HEX" href="http://www.webperfect.pl/artykuly-ogolne/kolory-hex-jak-je-tworzyc-i-odczytywac.html">Kolory HEX. Jak je tworzyć i odczytywać?</a></p>
<h3>Paleta 16 kolorów podstawowych</h3>
<p>Na potrzeby WWW określono 16 kolorów, które określono słowami. Poniżej nazwy kolorów (w nawiasie ich heksadecymalne odpowiedniki), które możemy użyć w CSS:</p>
<ul>
<li><span style="color: black;">black(#000000)</span></li>
<li><span style="color: silver;">silver(#C0C0C0)</span></li>
<li><span style="color: gray;">gray(#808080)</span></li>
<li><span style="color: white; background-color: silver;">white(#FFFFFF)</span></li>
<li><span style="color: maroon;">maroon(#800000)</span> <span style="color: red;">red(#FF0000)</span></li>
<li><span style="color: purple;">purple(#800080)</span></li>
<li><span style="color: fuchsia;">fuchsia(#FF00FF)</span></li>
<li><span style="color: green;">green(#008000)</span></li>
<li><span style="color: lime;">lime(#00FF00)</span></li>
<li><span style="color: olive;">olive(#808000)</span></li>
<li><span style="color: yellow;">yellow(#FFFF00)</span></li>
<li><span style="color: navy;">navy(#000080)</span></li>
<li><span style="color: blue;">blue(#0000FF)</span></li>
<li><span style="color: teal;">teal(#008080)</span></li>
<li><span style="color: aqua;">aqua(#00FFFF)</span></li>
</ul>
<p>W raz z rozwojem wersji CSS pula tych nazw trochę się zwiększyła i tak w przypadku CSS 2.1 mamy jeden dodatkowy kolor <span style="color: #ffa500;">orange(#FFA500)</span>, natomiast w CSS 3 dodano jeszcze 130 nazw.</p>
<h3>Kolory dziesiętne RGB</h3>
<p>W bardzo łatwy sposób możemy za pomocą liczb dziesiętnych zakodować odpowiedni kolor. Podobnie jak w systemie heksadecymalnym mamy 16 777 216 kombinacji, po 256 dla każdego koloru (czerwony, zielony, niebieski).  Dla każdego koloru możemy zatem wybrać liczbę z zakresu od 0 do 255 i użyć w przykładowy sposób (CSS):</p>
<pre escaped="true" lang="css" line="1">body{
color: rgb(0,0,255);
...
}</pre>
<p>W powyższy sposób otrzymamy kolor już wiadomo chyba jaki.</p>
<h4>Jak zamienić HEX na dziesiętny RGB?</h4>
<p>Możesz potraktować to jako ciekawostkę, bo o ile nie napiszesz własnej palety koloru to raczej nie wiele Ci się to przyda, no ale może warto wiedzieć.</p>
<p>A więc tak: przypominam, że przedział systemu szesnastkowego przyjmuje znaki od 0-F (liczbowo byłoby to 0-15) . Aby zamienić HEX na dziesiętne odczytujemy wartość HEX i mnożymy x16 do odpowiedniej potęgi każdą liczbę, następnie wszystko dodajemy. Żeby było łatwiej pokaże to na przykładzie:</p>
<p>HEX F = DEC 15, bo 15*16^0 = 15<br />
HEX FF = DEC 255, bo 15*16^1  + 15*16^0 = 255<br />
HEX FFF = DEC 4095, bo 15*16^2 + 15*16^1 + 15*16^0 = 4095</p>
<p>Potęgi liczymy od 0 do ilości znaków kodu heksadecymalnego, w taki sposób, że jedności będą miały potęgę 0, dziesiątki potęgę 1, setki potęgę 2 itd&#8230;  Prościej mówiąc lecimy z potęgami od prawej do lewej strony (licząc od 0).</p>
<p>Zamiana w drugą stronę jest już nieco bardziej skomplikowana, więc na razie sobie ją darujemy.</p>
<h3>Procentowy RGB</h3>
<p>Kolor RGB możemy zapisać w postaci procentowej. Po prostu nadajemy tutaj wartości od 0 do 255, tyle, że w procentach (100% = 255):</p>
<pre escaped="true" lang="css" line="1">body{
    background: rgb(0%,100%,0%);
...
}</pre>
<p>W ten oto sposób otrzymaliśmy zielone tło. Należy pamiętać, że pomiędzy wartością liczbową a znakiem procentu nie może być żadnych odstępów i wszystkie wartości muszą być określane w procentach.</p>
<p>Nie jest to idealne rozwiązanie dla kogoś, kto chce dopasować kolor pod grafikę.</p>
<p>Dosyć ciekawego rozwiązania dostarcza nam CSS w wersji 3, a konkretnie chodzi o określanie koloru RGB ze stopniem przezroczystości alpha. Wygląda to następująco:</p>
<pre escaped="true" lang="css" line="1">div{
   background: rgba(100%,0%,0%,0.5);
...
}</pre>
<p>Wartość alpha mieści się w przedziale 0 (pełna przezroczystość) do 1 (wartość domyślna &#8211; brak przezroczystości).</p>
<p>Sposób ten akceptują przeglądarki, które obsługują przezroczystość (IE ma z tym problemy).</p>
<h3>Model HSL</h3>
<p>Jest to dosyć ciekawe rozwiązanie. Wybieramy barwę (ang. Hue), następnie określamy nasycenie (ang. Saturation) oraz jasność (ang. Lightness). Jednym słowem nie mieszamy  bezpośrednio kolorów, jak w przypadku RGB. Określamy go tak: hsl(H, S%, L%).</p>
<p><img class="size-full wp-image-277 alignright" title="Koło barw HSL" src="http://www.webperfect.pl/wp-content/uploads/2011/04/hsl-kolo-kolorow.png" alt="HSL koło kolorów" width="215" height="192" /><br />
Barwa (H) określana jest  jako liczba całkowita w stopniach z przedziału 0 do 360 (koło barw). I tak oto wartość 0 daje nam barwę czerwoną, w kierunku do 120 jest coraz bardziej zielona, natomiast 240 to już barwa niebieska, a kolejne wyższe wartości kierują nas coraz bardziej w barwę czerwoną. Następnie procentowo określamy nasycenie oraz jasność. System ten określany jest również jako HSB (ang. Brightness &#8211; jasność).</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.webperfect.pl/artykuly-ogolne/inne-sposoby-definiowania-kolorow.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
