Ako viete, farba môže ovplyvniť stav človeka: duševný aj fyzický. Každý deň pri prehliadaní internetu oči vyhodnocujú milióny farieb a odtieňov. Webový dizajnér, ktorý pozná psychológiu farieb, dokáže ovládať náladu návštevníka, aby dosiahol akékoľvek ciele.
Je to spôsobené tým, že niektoré odtiene upokojujú a niektoré naopak vzrušujú. Ďalej si povieme, ako sa farba syntetizuje a zobrazuje pomocou počítačovej technológie.
RGB je farebný model, ktorý predstavuje metódu získania všetkých farieb a ich odtieňov zmiešaním troch hlavných zložiek v rôznych pomeroch, ktorými sú:
- Červená farba ( Červená);
- zelená farba ( zelená);
- Modrá farba ( Modrá).
Odtiaľ pochádza aj skrátený názov RGB. Tieto farby sú vybrané ako hlavné z nejakého dôvodu: dôvodom je fyziológia sietnice ľudského oka a spôsob, akým ich vníma:
Model RGB je jednoznačne najpopulárnejší a používa sa na reprodukciu farieb na televíznych obrazovkách a počítačových monitoroch. Keďže výrobcovia vybavujú svoje výrobky rôznymi vlastnosťami, v roku 1996 jeden systém Syntéza farieb na báze RGB s názvom sRGB, ktorú vyvinuli spoločne spoločnosti Microsoft a HP.
Číselné zobrazenie farieb
Ako už bolo spomenuté, RGB farby vznikajú zmiešaním základných farieb. Na opis intenzity každého z nich bola prijatá schéma, v ktorej je farba reprezentovaná rozsahom 0-255 (8 bitov), čo zodpovedá 00-FF v hexadecimálnej sústave.
To znamená, že primárne farby budú vyzerať takto:
- Červená - RGB (255.0.0);
- Zelená - RGB (0,255,0);
- Modrá - RGB (0,0,255);
Ak intenzita farby nadobudne hodnoty menšie ako 255, získajú sa rôzne odtiene červenej, zelenej a modrej. Nasleduje tabuľka ich gradácie, ako aj hexadecimálne hodnoty každého z odtieňov:
RGB farebné grafy
Prirodzene, okrem gradácií základných farieb existujú aj zmiešané a ich počet je pomerne veľký. Preto bola vytvorená tabuľka farieb RGB, ktorá prezentuje všetky existujúce odtiene, ako aj ich názvy a číselné znázornenia ( v desiatkovom a hexadecimálnom tvare).
Tu ju môžete spoznať. Táto tabuľka výrazne uľahčuje život webovým dizajnérom, pretože za pár sekúnd nájdete požadovaný odtieň a zistíte jeho číselné zastúpenie.
Bezpečná farebná paleta RGB
V istom momente však nastal problém so zobrazovaním farieb v rôznych prehliadačoch a na jeho vyriešenie bola zostavená takzvaná „bezpečná“ paleta farieb RGB, ktoré boli odvodené matematickými výpočtami.
Keď prehliadač nedokáže správne zobraziť farbu, pokúsi sa priblížiť k tomu, čo potrebuje, zmiešaním susedných farieb a výsledok bude s najväčšou pravdepodobnosťou úplne neprijateľný:
Pomocou kódov RGB farby z tejto palety sa webový vývojár nemusí báť zobrazenia farieb na stránkach svojho webu pri prezeraní pomocou rôzne prehliadače, na rôzne platformy a monitory. Hoci na tento moment tabuľka bezpečných farieb stráca svoj význam ( technologický pokrok nezostáva stáť), pri jeho používaní môžete, ako sa hovorí, pokojne spávať.
Zlatá farba v modeli RGB
Prvýkrát bolo slovo "zlato" použité na začiatku XIV storočia na označenie farby chemického prvku nazývaného Aurum - zlato. V modeli RGB je zlatá farba reprezentovaná nasledujúcimi číselnými hodnotami:
- RGB (255, 215, 0) - desiatková sústava;
- HEX #FFD700 - hexadecimálna sústava.
Béžová farba v modeli RGB
Béžová má v histórii pomerne významné miesto, aj keď nie práve najvýraznejšie. Mnohé kultúrne pamiatky, najmä antické sochy, boli vyrobené zo steatitu a mastenca, ktoré majú béžový odtieň. V modeli RGB má béžová nasledujúce číselné zastúpenia.
>> Správa farieb
Hexadecimálne hodnoty farieb RGB
Metódy opisu a spracovania farieb sa navzájom líšia v tom, na aké konečné zobrazenie sú určené. Porovnajme napríklad zobrazenia farieb pre polygrafiu a pre počítačové monitory. V prvom prípade je základ biely farba papiera, na ktorú sa následne nanesú tri základné farby: Modrá, Fialová a žltá. Miešaním medzi sebou a s bielou farbou papiera v rôznych pomeroch, tieto tri základné farby dávajú rôzne farebné odtiene, okrem čistej čiernej, alebo pri úplnej absencii farieb dávajú bielemu papieru. Ak k nim pridáme čiernu, dostaneme CMYK- spôsob prenosu farby, keď sa požadovaná farba získa odčítaním chýbajúcich farieb od bielej.
V druhom prípade je základ čierna farba obrazovky monitora, ktorej každá bunka svieti jednou z troch farieb: červená- červená, zelená- zelené a Modrá-Modrá. Potom pri úplnej absencii akejkoľvek žiary dostaneme čisto čiernu farbu obrazovky a ktorákoľvek z požadovaných farieb je daná pomerom každej z troch farieb. V tomto prípade dostaneme RGB- Metóda prenosu farieb. Primárne farby môžu mať význam od 0
predtým 255
, alebo z 0%
predtým 100%
, alebo môže byť vyjadrená ako hexadecimálna hodnota. Na obrázku nižšie môžete vidieť výsledky miešania základných farieb.
Hexadecimálna číselná sústava, na rozdiel od desiatkovej číselnej sústavy, nemá vo svojom číselnom rade desať číslic, ale šestnásť - odtiaľ názov. V súlade s tým môžu byť neopakujúce sa varianty kombinácií dvoch číslic iba - 256 , ak chcete pokračovať v rade číslic po 9 listy od A predtým F, takže riadok bude vyzerať takto -
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. |
V tomto prípade je farba daná tromi hexadecimálnymi číslami, z ktorých každé pozostáva z dvoch číslic. Prvé číslo určuje intenzitu červená farby, priemer zelená, posledná vec- Modrá farby. Všetky čísla môžu nadobúdať hodnoty v rozsahu od 00 predtým FF(od 0 do 255). Napríklad: zelená farba je uvedená ako #00FF00, červená - ako #FF0000, modrá - ako #0000FF, biela - ako #FFFFFF, úplná absencia farby alebo čierna sa uvádza ako #000000 .
Vo formulári nižšie môžete pre každú z troch farieb nastaviť ľubovoľné hexadecimálne hodnoty a kliknutím do výstupného poľa zobraziť výsledok ich zmiešania.
Príklady niektorých hexadecimálnych hodnôt farieb RGB: červená, modrá a zelená gradácia.
vyhliadka | kód | vyhliadka | kód | vyhliadka | kód | vyhliadka | kód | vyhliadka | kód | vyhliadka | kód |
#010000 | #800000 | #000100 | #008000 | #000001 | #000080 | ||||||
#100000 | #900000 | #001000 | #009000 | #000010 | #000090 | ||||||
#200000 | #A00000 | #002000 | #00A000 | #000020 | #0000A0 | ||||||
#300000 | #B00000 | #003000 | #00B000 | #000030 | #0000B0 | ||||||
#400000 | #C00000 | #004000 | #00C000 | #000040 | #0000C0 | ||||||
#500000 | #D00000 | #005000 | #00D000 | #000050 | #0000D0 | ||||||
#600000 | #E00000 | #006000 | #00E000 | #000060 | #0000E0 | ||||||
#700000 | #FF0000 | #007000 | #00FF00 | #000070 | #0000FF |
Určenie farby pomocou reťazcových literálov
Kvôli jednoduchosti používania dostali niektoré farby a ich kombinácie názvy, ktoré rozpoznávajú všetky prehliadače a mnohé z nich bolo možné nastaviť podľa názvu. V tabuľke nižšie sú uvedené niektoré názvy farieb:
vyhliadka | názov | vyhliadka | názov | vyhliadka | názov | vyhliadka | názov |
biely | Červená | Oranžová | žltá | ||||
zelená | Modrá | Fialová | čierna | ||||
Alice modrá | starožitná biela | Aqua | akvamarín | ||||
Azure | Béžová | Bisque | blanchedalmond | ||||
Modrofialová | Hnedá | Burlywood | Cadetblue | ||||
chartreuse | Čokoláda | Coral | Nevädza modrá | ||||
Cornsilk | Crimson | tyrkysový | tmavomodrá | ||||
Darkcyan | darkgoldenrod | tmavo-sivá | tmavozelený | ||||
Darkkhaki | Darkmagenta | Darkolivegreen | tmavooranžová | ||||
Darkorchid | tmavo červená | tmavý losos | Tmavomorská zelená | ||||
tmavoslate modrá | tmavoslate šedá | tmavotyrkysová | Tmavofialová | ||||
Deeppink | hlboká nebeská modrá | Dimgray | dodger blue | ||||
Ohnivá tehla | Kvetinovo biele | lesná zeleň | Fuschia | ||||
Gainsboro | duch biely | Zlato | zlatobyľ | ||||
Šedá | Zelenožltá | Medová Rosa | hotpink | ||||
Indická červená | Indigo | Slonovina | kaki | ||||
Levanduľa | Levanduľová ruža | Lemonchiffon | svetlo modrá | ||||
svetlý koral | svetlocyan | svetlostudenárodožltá | svetlo zelená | ||||
svetlo sivá | Svetlo ružová | svetlý losos | Svetlozelená | ||||
svetloskymodrá | Svetlá bridlicová šedá | svetlo oceľovo modrá | svetlo žltá | ||||
vápno | Limetková zelená | bielizeň | purpurová | ||||
gaštanové | stredný akvamarín | stredne modrá | Stredná orchidea | ||||
Stredne fialová | Strednezelená | Stredne bridlicovomodrá | Stredne jarná zelená | ||||
stredne tyrkysová | stredne fialová | polnočná modrá | mätový krém | ||||
mistyrose | Navajobiela | námorníctvo | oldlace | ||||
Olivový | Olivedrab | oranžová červená | Orchidea | ||||
palegoldenrod | Svetlo zelená | paleturquoise | palefialové | ||||
papayawhip | Peachpuff | Peru | Ružová | ||||
Slivka | Powderblue | Rosybrown | kráľovská modrá | ||||
sedlovo hnedá | seagreen | Mušle | Sienna | ||||
Strieborná | modrá obloha | Bridlicová modrá | Slategray | ||||
Sneh | Springgreen | oceľovo modrá | Tan | ||||
Modrozelený | Bodliak | paradajka | tyrkysová | ||||
fialový | Pšenica | Whitesmoke | žltá zelená |
Používanie bezpečného výberu farieb
Bohužiaľ, na rôzne platformy, pri rôznych systémových nastaveniach je správna reprodukcia farieb problém. Ide o to, že prehliadač sa vždy snaží prispôsobiť farebnú paletu dokumentu systémové nastavenia a monitorovacie schopnosti, pomocou vlastného miešania farieb a ich nahrádzania. V dôsledku toho používateľ niekedy nevidí úplne to, čo mu správca webu chcel ukázať. Východisko z tejto situácie sa našlo v použití palety, ktorej každú farbu zaručene vykreslia rovnako všetky prehliadače na rôznych platformách. Tento tzv zaručené paleta, známa aj ako bezpečné paleta. Táto paleta obsahuje farby, ktorých farebné zložky nadobúdajú nasledujúce hodnoty: 00 ,33 ,66 ,99 , CC,FF, vo všetkých možných 216 ich kombinácie.
vyhliadka | kód | vyhliadka | kód | vyhliadka | kód | vyhliadka | kód | vyhliadka | kód | vyhliadka | kód |
FFFFFF | CCCCCC | 999999 | 666666 | 333333 | 000000 | ||||||
CCCC66 | CCCC33 | 999966 | 999933 | 999900 | 666600 | ||||||
CCFF66 | CCFF00 | CCFF33 | CCCC99 | 666633 | 333300 | ||||||
99FF00 | 99FF33 | 99CC66 | 99CC00 | 99CC33 | 669900 | ||||||
CCFF99 | 99FF99 | 66CC00 | 66CC33 | 669933 | 336600 | ||||||
66FF00 | 66FF33 | 33FF00 | 33 CC00 | 339900 | 009900 | ||||||
33FF33 | 00FF33 | 00FF00 | 00CC00 | 33CC33 | 00CC33 | ||||||
CCFFCC | 99CC99 | 66CC66 | 669966 | 336633 | 003300 | ||||||
99FF99 | 66FF66 | 33FF66 | 00FF66 | 339933 | 006600 | ||||||
66FF99 | 33FF99 | 00FF99 | 33CC66 | 00CC66 | 009933 | ||||||
66CC99 | 33CC99 | 00CC99 | 339966 | 009966 | 006633 | ||||||
99FFCC | 66FFCC | 33FFCC | 00FFCC | 33CCCC | 009999 | ||||||
CCFFFF | 99FFFF | 66FFFF | 33FFFF | 00FFFF | 00CCCC | ||||||
99 CCCC | 66CCCC | 339999 | 669999 | 006666 | 336666 | ||||||
66CCFF | 33CCFF | 00CCFF | 3399 CC | 0099CC | 003333 | ||||||
99CCFF | 3399FF | 0099FF | 6699 CC | 336699 | 006699 | ||||||
0066FF | 3366 CC | 0066CC | 0033FF | 003399 | 003366 | ||||||
6699FF | 3366FF | 0000 FF | 0000 CC | 0033CC | 000033 | ||||||
3333FF | 3300 FF | 3300 CC | 3333 CC | 000099 | 000066 | ||||||
9999 CC | 6666FF | 6666 CC | 666699 | 333399 | 333366 | ||||||
CCCCFF | 9999FF | 6666FF | 6600 FF | 330099 | 330066 | ||||||
9966 CC | 9966FF | 6600 CC | 6633 CC | 663399 | 330033 | ||||||
CC99FF | CC66FF | 9933FF | 9900 FF | 660099 | 663366 | ||||||
CC66FF | CC33FF | CC00FF | 9900 CC | 996699 | 660066 | ||||||
CC99CC | CC66CC | CC33CC | CC00CC | 990099 | 993399 | ||||||
FFCCFF | FF99FF | FF66FF | FF33FF | FF00FF | CC3399 | ||||||
FF66CC | FF00CC | FF33CC | CC6699 | CC0099 | 990066 | ||||||
FF99CC | FF3399 | FF0099 | CC0066 | 993366 | 660033 | ||||||
FF6699 | FF3399 | FF0066 | CC3366 | 996666 | 663333 | ||||||
CC9999 | CC6666 | CC3333 | CC0000 | 990033 | 330000 | ||||||
FFCCCC | FF9999 | FF6666 | FF3333 | FF0000 | CC0033 | ||||||
FF6633 | CC3300 | FF3300 | FF0000 | CC0000 | 990000 | ||||||
FFCC99 | FFCC66 | FF6600 | CC6633 | 993300 | 660000 | ||||||
FF9900 | FF9933 | CC9966 | CC6600 | 996633 | 663300 | ||||||
FFCC66 | FFCC00 | FFCC33 | CC9900 | CC9933 | 996600 | ||||||
FFFFCC | FFFF99 | FFFF66 | FFFF33 | FFFF00 | CCCC00 |
Farbu je možné nastaviť v CSS rôzne cesty:
- podľa názvu,
- podľa hexadecimálnej hodnoty,
- vo formátoch RGB a RGBA,
- vo formátoch HSL a HSLA.
Nastavte farbu podľa názvu
Prehliadače podporujú špecifikovanie určitých farieb prvkov podľa názvu. V tejto tabuľke sú niektoré kľúčové slová (anglické názvy farieb) používané na nastavenie vlastností farieb, kód RGB, hexadecimálny kód (HEX) a kód HSL.
názov | Farba | RGB | HEX | HSL | Popis |
---|---|---|---|---|---|
biely | rgb(255, 255, 255) | #ffff alebo #fff | hsl(0, 0 %, 100 %) | biely | |
Strieborná | rgb(192, 192, 192) | #c0c0c0 | hsl(0, 0 %, 75 %) | Šedá | |
sivá | rgb(128, 128, 128) | #808080 | hsl(0, 0 %, 50 %) | Tmavošedý | |
čierna | rgb(0, 0, 0) | #000000 alebo #000 | hsl(0, 0 %, 0 %) | čierna | |
gaštanové | rgb(128, 0, 0) | #800000 | hsl(0, 100 %, 25 %) | Tmavo červená | |
červená | rgb(255, 0, 0) | #ff0000 alebo #f00 | hsl(0, 100 %, 50 %) | Červená | |
oranžová | rgb(255, 165, 0) | #ffa500 | hsl(38,8, 100 %, 50 %) | Oranžová | |
žltá | rgb(255, 255, 0) | #ffff00 alebo #ff0 | hsl(60, 100 %, 50 %) | žltá | |
olivový | rgb(128, 128, 0) | #808000 | hsl(60, 100 %, 25 %) | Olivový | |
vápno | rgb(0, 255, 0) | #00ff00 alebo #0f0 | hsl(120, 100 %, 50 %) | svetlo zelená | |
zelená | rgb(0; 128; 0) | #008000 | hsl(120, 100 %, 25 %) | zelená | |
aqua | rgb(0, 255, 255) | #00ffff alebo #0ff | hsl(180, 100 %, 50 %) | Modrá | |
Modrá | rgb(0, 0, 255) | #0000ff alebo #00f | hsl(240, 100 %, 50 %) | Modrá | |
námorníctvo | rgb(0,0,128) | #000080 | hsl(240, 100 %, 25 %) | Tmavomodrá | |
modrozelený | rgb(0, 128, 128) | #008080 | hsl(180, 100 %, 25 %) | modro zelená | |
fuchsiová | rgb(255, 0, 255) | #ff00ff alebo #f0f | hsl(300, 100 %, 50 %) | Ružová | |
Fialová | rgb(128, 0, 128) | #800080 | hsl(300, 100 %, 25 %) | fialový |
Toto je príklad použitia názvov farieb, názvy farieb sú prevzaté z rozšírenej tabuľky.
Tento kód funguje takto:
Nastavenie farby pomocou RGB
RGB je aditívny farebný model. Na anglický jazyk prídavok- prídavok. RGB je skratka anglických slov: Red, Green, Blue – červená, zelená, modrá). Z toho je zrejmé, že v modeli RGB sa farby syntetizujú pridaním troch farieb (červená, zelená, modrá) v rôznych množstvách.
Zmiešaním červenej, zelenej a modrej farby môžete získať niekoľko miliónov odtieňov. Všetky možné kombinácie sú uložené v pamäti počítačov.
Choďte k veci.
Na nastavenie vlastností v tomto formáte sa používa zápis rgb(r, g, b), kde r, g, b sú tri kanály pre každú farbu (červená, zelená, modrá). Hodnoty pre každý kanál sú nastavené v rozsahu od 0 do 255.
Príklad kódu.
Aby bolo všetko jasné, uvediem príklad kódu:
Takto by mal fungovať tento príklad:
Obr.1. Farby v RGB.Napríklad vysvetlenia.
Na začiatku stránky vytvoríme triedu div.rgb, je potrebná, aby bloky vytvorené tagom
Ďalej v kóde nastavte farbu pozadia bloku
Skúste tento príklad upraviť tak, aby obsahoval vaše vlastné hodnoty, napríklad rgb(100, 100, 100) .
Nastavenie farby pomocou RGBA
V CSS3 sa objavil nový nástroj pre prácu s farbou - formát RGBA. Možno to nazvať evolúciou modelu RGB, ale s pridaním jedného nového kanála - A alebo alfa kanála. Tento kanál nastavuje priehľadnosť farby. Jeho hodnoty sú nastavené v rozsahu od 0 do 1. Hodnota rovnajúca sa 0 zodpovedá úplnej priehľadnosti, 1 - plná nepriehľadnosť (farba bude rovnaká, ako je nastavená v prvé tri RGB kanály) a stredné hodnoty ako 0,4 alebo 0,6 - priesvitnosť v rôznej miere.
Príklad kódu.
Takto to bude fungovať:
Tento kód je vizuálne podobný nasledujúcemu, ktorý používa model RGB na nastavenie hodnoty farby:
Tu je jeho výsledok:
Hodnota alfa kanála rovná nule robí akúkoľvek farbu neviditeľnou – absolútne transparentnou, hodnota rovnajúca sa jednej prevedie farbu v kóde RGB bez zmien. Vlastnosť rgba(255,0,0,1.0) zobrazuje červenú farbu rgb(255, 0, 0) .
Podľa hexadecimálnej hodnoty (HEX kód)
V bežnom živote používame desiatkovú sústavu počítania. Jeho pôvod je veľmi jednoduchý – na rukách máme desať prstov a v živote sa hodilo počítať na prstoch. Ak v desiatková sústava desať číslic: od 0 do 9 a číslo 10 je ďalšia číslica, potom je v systéme hexadecimálnych čísel 16 číslic a ďalšia číslica bude číslo 16.
Na označenie farebných kódov sa ako hexadecimálne číslice používajú obyčajné desatinné číslice od 0 do 9 a na označenie čísel od 10 do 15 sa používajú latinské písmená od A do F, teda (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F). Pre prehľadnosť si to zhrňme do tabuľky:
Na zápis hexadecimálnych čísel väčších ako F (15 desiatkových), ako v desiatkovej sústave, tiež používajú spojenie dvoch číslic, ale už šestnástkové, čo je zrejmé. Áno, pre poriadok desatinné číslo 255 v hexadecimálnom zápise je FF.
Hexadecimálny systém je pre počítač zrozumiteľnejší, rýchlejšie spracováva hodnoty dané hexadecimálnou hodnotou.
Ak chcete zadať farbu v šestnástkovej sústave, pred číselnú hodnotu uveďte znak „#“, napríklad: #FFC0CB . Samotná hodnota #FFC0CB pozostáva z troch hexadecimálnych číslic FF , C0 a CB . Význam tohto vstupu je rovnaký ako pri nastavovaní farby RGB formát(rgb(r, g, b) ) - každá hexadecimálna číslica v HEX kóde označuje sýtosť farieb v kanáli modelu RGB.
Tento kód zobrazí nasledujúce prvky:
A tu je obrázok s výsledkom zo sekcie "Nastavenie farby pomocou RGB" na tejto stránke vyššie.
Obr.1. Farby v RGB.Vidíme, že farby sú rovnaké.
Skrátený zápis HEX kódu farby je povolený: 6-miestne číslo môže byť napísané ako 3-miestne číslo. Platí to len vtedy, ak sa dve číslice vo farbe toho istého kanála opakujú.
To znamená, že je prijateľná nasledujúca skratka:
Napríklad farba #ff22aa môže byť napísaná ako #f2a alebo farba #44aa22 môže byť napísaná ako #4a2.
Nastavenie farby pomocou HSL
CSS3 má nový formát na špecifikovanie farieb.
Formát HSL je skratkou anglických slov: Hue (odtieň), Saturate (sýtosť) a Lightness (svetlosť).
Odtieň v HSL je hodnota farby na špeciálnom farebnom koliesku (obrázok 2) a je špecifikovaná v stupňoch. Ak nakreslíme analógie s modelom RGB, potom 0° zodpovedá červenej, 120° zodpovedá zelenej a 240° zodpovedá modrej.
Hodnota odtieňa sa zmení z 0 na 359.
Obrázok 2. Farebné koliesko HSL.
Druhá hodnota - sýtosť (Saturate) sa nastavuje v percentách. Pri 100% sýtosti je farba čo najviac "šťavnatá", pri pohybe indikátora sýtosti smerom k 0% sa farba stáva čoraz matnejšou a roluje do sivej.
Tretia hodnota - svetlosť (Lightness) sa nastavuje tiež v percentách. Čím vyššie percento, tým jasnejšia bude farba. Extrémne hodnoty 0% a 100% budú indikovať čiernu (nedostatok svetla) a bielu (exponovanú) farbu a nezáleží na tom, ktorá farba z farebného kolieska bola zvolená v prvom kanáli. Za optimálnu hodnotu možno považovať hodnotu jasu farby rovnú 50 %.
Nastavenie farieb pomocou HSLA
Formát HSLA súvisí s HSL, rovnako ako RGB s RGBA. Vo formáte HSLA, ako aj v RGBA, je pridaný alfa kanál, ktorý je zodpovedný za priehľadnosť farieb.
Farba špecifikovaná vo formáte HSL je ľahšie čitateľná. Dá sa povedať, že je to intuitívne. Napríklad kód hsl(120,60%,50%) môže predstavovať konečnú farbu, ak je v pamäti obrázok farebného kolieska HSL. To sa nedá povedať o formátoch RGB a HEX, farebný kód špecifikovaný v týchto formátoch je jasný až po vykreslení na monitore.
Nové formáty v CSS3 (HSL, HSLA a RGBA) fungujú v prehliadačoch od verzií: IE 9.0, Opera 10.0 Firefox 3.0. Ako zabezpečiť, aby štýly fungovali v starších prehliadačoch?
Someblock ( farba pozadia: rgb(255,50,50); farba pozadia: rgba(255,50,50,0,85) )
Pri použití tohto kódu v starších prehliadačoch sa farba pozadia pre triedu .somebloсk, aj keď nepoužíva alfa kanál, zobrazí vo formáte RGB.
Na určenie farieb sa používajú hexadecimálne čísla. Šestnástková sústava je na rozdiel od desiatkovej sústavy založená, ako už názov napovedá, na čísle 16. Čísla budú nasledovné: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A , B, C , D, E, F. Čísla od 10 do 15 sú nahradené latinskými písmenami. Čísla väčšie ako 15 v šestnástkovej sústave vznikajú spojením dvoch čísel do jedného. Napríklad číslo 255 v desiatkovej sústave zodpovedá číslu FF v šestnástkovej sústave. Aby sa predišlo nejasnostiam v definícii číselnej sústavy, pred hexadecimálnym číslom sa nachádza symbol hash #, napríklad #666999. Každá z troch farieb – červená, zelená a modrá – môže nadobúdať hodnoty od 00 do FF. Označenie farby je teda rozdelené do troch zložiek #rrggbb, kde prvé dva znaky označujú červenú zložku farby, dva stredné zelenú a posledné dva modrú. Je povolené používať skrátenú formu #rgb, kde by mal byť každý znak zdvojený. Záznam #fe0 by sa teda mal považovať za #ffee00.
podľa názvu
internet Explorer | Chrome | Opera | safari | Firefox | Android | iOS |
4.0+ | 1.0+ | 3.5+ | 1.3+ | 1.0+ | 1.0+ | 1.0+ |
Prehliadače podporujú niektoré farby podľa názvu. V tabuľke. 1 zobrazuje názvy, hexadecimálny kód, hodnoty v RGB, formát HSL a popis.
názov | Farba | Kód | RGB | HSL | Popis |
---|---|---|---|---|---|
biely | #ffff alebo #fff | rgb(255,255,255) | hsl(0,0%,100%) | biely | |
Strieborná | #c0c0c0 | rgb(192,192,192) | hsl (0,0 %, 75 %) | Šedá | |
sivá | #808080 | rgb(128,128,128) | hsl (0,0 %, 50 %) | Tmavošedý | |
čierna | #000000 alebo #000 | rgb(0,0,0) | hsl(0,0%,0%) | čierna | |
gaštanové | #800000 | rgb(128,0,0) | hsl(0,100%,25%) | Tmavo červená | |
červená | #ff0000 alebo #f00 | rgb(255,0,0) | hsl(0,100%,50%) | Červená | |
oranžová | #ffa500 | rgb(255,165,0) | hsl (38,8,100%,50%) | Oranžová | |
žltá | #ffff00 alebo #ff0 | rgb(255,255,0) | hsl(60,100%,50%) | žltá | |
olivový | #808000 | rgb(128,128,0) | hsl(60,100%,25%) | Olivový | |
vápno | #00ff00 alebo #0f0 | rgb(0,255,0) | hsl(120,100%,50%) | svetlo zelená | |
zelená | #008000 | rgb(0,128,0) | hsl(120,100%,25%) | zelená | |
aqua | #00ffff alebo #0ff | rgb(0,255,255) | hsl(180,100%,50%) | Modrá | |
Modrá | #0000ff alebo #00f | rgb(0,0,255) | hsl(240,100%,50%) | Modrá | |
námorníctvo | #000080 | rgb(0,0,128) | hsl(240,100%,25%) | Tmavomodrá | |
modrozelený | #008080 | rgb(0,128,128) | hsl(180,100%,25%) | modro zelená | |
fuchsiová | #ff00ff alebo #f0f | rgb(255,0,255) | hsl(300,100%,50%) | Ružová | |
Fialová | #800080 | rgb(128,0,128) | hsl(300,100%,25%) | fialový |
S RGB
internet Explorer | Chrome | Opera | safari | Firefox | Android | iOS |
5.0+ | 1.0+ | 3.5+ | 1.3+ | 1.0+ | 1.0+ | 1.0+ |
Farbu môžete definovať pomocou hodnôt červenej, zelenej a modrej v desatinných číslach. Každá z troch farebných zložiek nadobúda hodnotu od 0 do 255. Prijateľné je aj nastavenie farby v percentách, pričom 100 % bude zodpovedať číslu 255. Najprv sa určí kľúčové slovo rgb a potom sa zadajú farebné zložky uvedené v zátvorkách oddelené čiarkami, napríklad rgb(255 , 128, 128) alebo rgb(100 %, 50 %, 50 %).
RGBA
internet Explorer | Chrome | Opera | safari | Firefox | Android | iOS |
9.0+ | 1.0+ | 10.0+ | 3.1+ | 3.0+ | 2.1+ | 2.0+ |
Formát RGBA je syntaxou podobný RGB, ale obsahuje alfa kanál, ktorý nastavuje priehľadnosť prvku. Hodnota 0 je úplne priehľadná, 1 je nepriehľadná a stredná hodnota ako 0,5 je priesvitná.
RGBA sa pridáva do CSS3, takže validácia kódu CSS by sa mala vykonávať podľa tejto verzie. Treba poznamenať, že štandard CSS3 je stále vo vývoji a niektoré jeho funkcie sa môžu zmeniť. Napríklad farba RGB pridaná do vlastnosti farba pozadia prejde validáciou, ale farba pridaná do vlastnosti pozadia nie. Prehliadače zároveň celkom správne chápu farbu pre obe vlastnosti.
HSL
internet Explorer | Chrome | Opera | safari | Firefox | Android | iOS |
9.0+ | 1.0+ | 9.6+ | 3.1+ | 3.0+ | 2.1+ | 2.0+ |
Názov formátu HSL je tvorený kombináciou prvých písmen Hue (odtieň), Saturate (sýtosť) a Lightness (svetlosť). Odtieň je hodnota farby na farebnom koliesku (obr. 1) a udáva sa v stupňoch. 0° je červená, 120° je zelená a 240° je modrá. Hodnota odtieňa sa môže meniť od 0 do 359.
Ryža. 1. Farebné koliesko
Sýtosť je intenzita farby meraná v percentách od 0 % do 100 %. Hodnota 0 % označuje žiadnu farbu a odtieň sivej, 100 % je maximálna hodnota sýtosti.
Svetlosť nastavuje, aká jasná je farba, a určuje sa v percentách od 0 % do 100 %. Nízke hodnoty farbu stmavia, vysoké hodnoty zosvetlia, extrémne hodnoty 0% a 100% zodpovedajú čiernej a bielej.
HSLA
internet Explorer | Chrome | Opera | safari | Firefox | Android | iOS |
9.0+ | 1.0+ | 10.0+ | 3.1+ | 3.0+ | 2.1+ | 2.0+ |
Formát HSLA je syntaxou podobný HSL, ale obsahuje alfa kanál, ktorý nastavuje priehľadnosť prvku. Hodnota 0 je úplne priehľadná, 1 je nepriehľadná a stredná hodnota ako 0,5 je priesvitná.
Hodnoty farieb v RGBA formáty, HSL a HSLA sú pridané do CSS3, takže pri používaní týchto formátov skontrolujte platnosť kódu voči verzii.
HTML5 CSS2.1 CSS3 IE Cr Op Sa Fx
POZOR
Všetky spôsoby odchytu leva uvedené na stránke sú teoretické a založené na výpočtových metódach. Autori neručia za vašu bezpečnosť pri ich používaní a zriekajú sa akejkoľvek zodpovednosti za výsledok. Pamätajte, že lev je dravec a nebezpečné zviera!
Výsledok tohto príkladu je znázornený na obr. 2.
Ryža. 2. Farby na webovej stránke
Vlad Merževič
V HTML je farba určená jedným z dvoch spôsobov: pomocou hexadecimálneho kódu a názvom niektorých farieb. Používa sa najmä metóda založená na šestnástkovej sústave, ako najuniverzálnejšia.
Hexadecimálne farby
HTML používa na špecifikáciu farieb hexadecimálne čísla. Šestnástková sústava je na rozdiel od desiatkovej sústavy založená, ako už názov napovedá, na čísle 16. Čísla budú nasledovné: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A , B, C , D, E, F. Čísla od 10 do 15 sú nahradené latinskými písmenami. V tabuľke. 6.1 ukazuje zhodu medzi desatinnými a hexadecimálnymi číslami.
Čísla väčšie ako 15 v šestnástkovej sústave vznikajú spojením dvoch čísel do jedného (tabuľka 6.2). Napríklad číslo 255 v desiatkovej sústave zodpovedá číslu FF v šestnástkovej sústave.
Aby sa predišlo nejasnostiam v definícii číselného systému, pred šestnástkovým číslom je znak libry #, napríklad #aa69cc. V tomto prípade nezáleží na veľkosti písmen, preto je dovolené písať #F0F0F0 alebo #f0f0f0.
Typická farba používaná v HTML je nasledovná.
Tu je farba pozadia webovej stránky nastavená na #FA8E47. Znak libry # pred číslom znamená, že je v šestnástkovej sústave. Prvé dve číslice (FA) definujú červenú zložku farby, tretia až štvrtá číslica (8E) zelenú zložku a posledné dve číslice (47) modrú zložku. Konečným výsledkom je táto farba.
FA | + | 8E | + | 47 | = | FA8E47 |
Každá z troch farieb – červená, zelená a modrá – môže nadobudnúť hodnoty od 00 do FF, výsledkom čoho je celkovo 256 odtieňov. Celkový počet farieb teda môže byť 256x256x256 = 16 777 216 kombinácií. Farebný model založený na červenej, zelenej a modrej zložke sa nazýva RGB (červená, zelená, modrá; červená, zelená, modrá). Tento model je aditívny (od add - add), v ktorom pridaním všetkých troch komponentov vzniká biela.
Aby ste uľahčili navigáciu v hexadecimálnych farbách, vezmite do úvahy niektoré pravidlá.
- Ak sú hodnoty farebných komponentov rovnaké (napríklad: #D6D6D6), získa sa šedý odtieň. Čím vyššie číslo, tým svetlejšia farba a hodnoty sa menia z #000000 (čierna) na #FFFFFF (biela).
- Jasne červená farba sa vytvorí, ak je červená zložka nastavená na maximum (FF) a ostatné zložky sú nastavené na nulu. Farba s hodnotou #FF0000 je najčervenší možný červený odtieň. To isté platí pre zelenú (#00FF00) a modrú (#0000FF).
- Žltá (#FFFF00) sa získa zmiešaním červenej so zelenou. To je jasne vidieť na farebnom koliesku (obr. 6.1), ktoré predstavuje primárne farby (červená, zelená, modrá) a doplnkové alebo doplnkové. Patrí medzi ne žltá, azúrová a fialová (nazývaná aj purpurová). Vo všeobecnosti možno akúkoľvek farbu získať zmiešaním farieb susediacich s ňou. Takže azúrová (#00FFFF) sa získa kombináciou modrej a zelenej.
Ryža. 6.1. Farebný kruh
Farby založené na hexadecimálnych hodnotách nemusia byť vybrané empiricky. Vhodné na tento účel grafický editor ktorí môžu pracovať s rôznymi farebnými modelmi, napr. Adobe Photoshop. Na obr. 6.2 je zobrazené okno pre výber farby v tomto programe, čiara zakrúžkuje výslednú hexadecimálnu hodnotu aktuálnej farby. Môžete ho skopírovať a vložiť do kódu.
Ryža. 6.2. Výber farieb vo Photoshope
Webové farby
Ak nastavíte kvalitu farieb monitora na 8-bit (256 farieb), môže sa zobraziť rovnaká farba rôzne prehliadače svojim spôsobom. Súvisí to so spôsobom vykresľovania grafiky, keď prehliadač pracuje s vlastnou paletou a nemôže zobraziť farbu, ktorú v palete nemá. V tomto prípade je farba nahradená kombináciou pixelov iných, jemu blízkych farieb, ktoré napodobňujú danú. Aby farba zostala v rôznych prehliadačoch rovnaká, bola predstavená paleta takzvaných webových farieb. Webové farby sú farby, ktorých pre každú zložku - červená, zelená a modrá - je nastavená jedna zo šiestich hodnôt - 0 (00), 51 (33), 102 (66), 153 (99), 204 (CC), 255 (FF). Šestnástková hodnota tohto komponentu je uvedená v zátvorkách. Celkový počet farieb zo všetkých možných kombinácií dáva 6x6x6 - 216 farieb. Príklad webovej farby je #33FF66.
Hlavnou črtou webovej farby je, že sa vo všetkých prehliadačoch zobrazuje rovnako. V súčasnosti je relevantnosť webových farieb veľmi malá kvôli zvýšeniu kvality monitorov a rozšíreniu ich možností.
Farby podľa názvu
Aby ste si nepamätali zbierku čísel, môžete namiesto toho použiť názvy bežne používaných farieb. V tabuľke. 6.3 zobrazuje názvy populárnych názvov farieb.
Názov farby | Farba | Popis | Hexadecimálna hodnota |
---|---|---|---|
čierna | čierna | #000000 | |
Modrá | Modrá | #0000FF | |
fuchsiová | Svetlo fialová | #FF00FF | |
sivá | Tmavošedý | #808080 | |
zelená | zelená | #008000 | |
vápno | svetlo zelená | #00FF00 | |
gaštanové | Tmavo červená | #800000 | |
námorníctvo | Tmavomodrá | #000080 | |
olivový | Olivový | #808000 | |
Fialová | Tmavo fialová | #800080 | |
červená | Červená | #FF0000 | |
Strieborná | svetlo sivá | #C0C0C0 | |
modrozelený | modro zelená | #008080 | |
biely | biely | #FFFFFF | |
žltá | žltá | #FFFF00 |
Nezáleží na tom, ako určíte farbu - podľa názvu alebo pomocou hexadecimálnych čísel. Vo svojom účinku sú tieto metódy rovnocenné. Príklad 6-1 ukazuje, ako nastaviť farby pozadia a textu webovej stránky.
Príklad 6.1. Farba pozadia a textu
Ukážkový text
AT tento príklad farba pozadia sa nastavuje pomocou atribútu bgcolor značky
a farbu textu prostredníctvom atribútu text. Pre rozmanitosť je hodnota atribútu text nastavená na hexadecimálne číslo a bgcolor je nastavená na rezervovanú hodnotu. kľúčové slovo modrozelený.