Teoria koloru

Tinty, cienie i tony — wyjaśnienie

Zespół colorPaletteFinder9 min czytania

Pierwsza prawdziwa paleta, jaką kiedykolwiek wypuściłem, miała dokładnie pięć kolorów, a cztery z nich były tym samym niebieskim. Nie zaplanowałem tego tak — po prostu wciąż potrzebowałem „odrobinę jaśniejszej wersji tego na tło karty”, „ciemniejszej na obramowanie” i „czegoś przygaszonego na zablokowany przycisk”. To, co naprawdę robiłem, nie mając na to słownictwa, to tworzenie tintów, cieni i tonów. Gdy nauczyłem się, że te trzy słowa opisują trzy precyzyjne operacje, praca z paletą przestała być metodą prób i błędów, a stała się czymś bliższym arytmetyce.

Ten przewodnik jest o tej arytmetyce. Czym naprawdę są tinty, cienie i tony, dlaczego walor i nasycenie to dwa różne pokrętła, a nie jedno, oraz jak zamienić pojedynczy odcień w czystą skalę tonalną, na której faktycznie da się zbudować interfejs. Wszystko tutaj odwzorowuje się wprost na kontrolki HSL w generatorze palety kolorów, więc możesz podążać z prawdziwymi liczbami zamiast z przeczuciami.

Najpierw jednozdaniowe definicje, potem niuanse

Oto definicje, w okrojonej formie:

To różnica między tintem, cieniem a tonem w jednym oddechu, i większość artykułów na tym poprzestaje. Ale najciekawsze jest to, co łączy wszystkie trzy: każde z nich redukuje chromę — czystą barwność odcienia. W pełni nasycony odcień jest najbardziej intensywny, jaki kiedykolwiek będzie. W chwili, gdy domieszasz dowolny element neutralny (biel, czerń lub szarość), wyciągasz z niego intensywność. Jest to dobrze udokumentowane w standardowym źródle o tincie, cieniu i tonie: dodanie bieli, czerni czy szarości obniża chromę koloru, choć przesuwają one jasność w różnych kierunkach.

Tak więc modelem myślowym nie jest „tint = jaśniejszy, cień = ciemniejszy, ton = przygaszony” jako trzy niezwiązane efekty. To jeden efekt — rozcieńczanie czystego odcienia neutralnym — oglądany z trzech kierunków. To przeformułowanie sprawia, że następna idea zaskakuje.

Walor i nasycenie to dwa różne pokrętła

Najużyteczniejsza rzecz, jaką możesz przyswoić, to że jasność i nasycenie są niezależne. Początkujący traktują „rozjaśnij to” i „zmniejsz intensywność” jako ten sam gest i dlatego ich palety robią się kredowe i płaskie. To nie ten sam gest. To dwa odrębne pokrętła, a tinty, cienie i tony to po prostu różne kombinacje tego, jak nimi obracasz.

Właśnie dlatego HSL to model koloru wart nauki. HSL to skrót od hue, saturation, lightness (odcień, nasycenie, jasność) i rozkłada kolor na trzy liczby, które możesz regulować pojedynczo:

Z tym słownictwem te trzy operacje stają się precyzyjne. Tint to głównie podnoszenie jasności ku 100%. Cień to głównie obniżanie jasności ku 0%. Ton to głównie obniżanie nasycenia ku 0% przy utrzymaniu jasności mniej więcej tam, gdzie jest. Dokumentacja MDN o notacji HSL to dobre miejsce, by potwierdzić składnię, jeśli chcesz zapisać to jako CSS.

Jeden precyzyjny przypis, bo myli ludzi. „L” w HSL to jasność (lightness), a nie „walor” czy „jaskrawość”. Istnieje siostrzany model, HSB/HSV, gdzie trzeci kanał to walor (value), i zachowuje się on inaczej — w HSB 100% waloru przy pełnym nasyceniu daje żywy czysty kolor, podczas gdy w HSL 100% jasności zawsze daje biel. Jeśli kiedykolwiek wyciągnąłeś kolor z Photoshopa (który używa HSB) i wyglądał nie tak w CSS (który używa HSL), to ta rozbieżność jest przyczyną. Do budowania skal tonalnych HSL jest przyjaźniejszym modelem właśnie dlatego, że jasność biegnie czysto od czerni do bieli.

Jak rozjaśnić lub przyciemnić kolor, nie psując go

Teraz część praktyczna, bo jest dobry i zły sposób, by to zrobić.

Naiwny sposób na rozjaśnienie koloru to przeciągnąć jasność w górę i uznać sprawę za zamkniętą. Problem w tym, że gdy kolor zbliża się do bieli, utrzymywanie stałego nasycenia sprawia, że wygląda na cienki i wyprany — bladą, anemiczną wersję samego siebie. Lekarstwo, po które doświadczeni projektanci sięgają niemal odruchowo: podnosząc jasność, jednocześnie odrobinę podbij nasycenie, a czasem przesuń odcień o kilka stopni. Jasne tinty często wyglądają bogaciej z nieco większym nasyceniem niż ton średni, a nie z mniejszym.

Przyciemnianie ma lustrzaną pułapkę. Obniż jasność ku 0, zostawiając nasycenie w spokoju, a ciemne kolory zrobią się mętne i martwe — płaska, bez życia niemal-czerń. Dobre ciemne cienie zwykle chcą zwiększonego nasycenia w miarę ciemnienia i często niewielkiego przesunięcia odcienia ku niebieskiemu lub czerwonemu, by sprawiały wrażenie zamierzonych, a nie jakby ktoś po prostu zgasił światło. To największa pojedyncza przyczyna, dla której skale budowane ręcznie wyglądają żywiej niż te generowane przez naiwną interpolację do czerni.

Uczciwa odpowiedź na pytanie jak rozjaśnić lub przyciemnić kolor brzmi więc: przesuwaj jasność jako działanie główne, ale nie zamrażaj pozostałych dwóch kanałów. Odczyt HSL w narzędziu sprawia, że łatwo to wyczuć — zmień jedną liczbę, obserwuj próbkę, a szybko nauczysz się, ile nasycenia potrzebuje dany odcień na każdym krańcu skali.

Budowanie czystej skali monochromatycznej z jednego odcienia

Tu wszystko staje się użyteczne. Monochromatyczna skala kolorów to pojedynczy odcień rozwinięty w pełną drabinę tintów, cieni i tonów — i jest szkieletem właściwie każdego realnego interfejsu. Gdy w generatorze palety kolorów wybierzesz regułę monochromatyczną, to właśnie tę strukturę generuje: jeden odcień, wiele kroków jasności.

Pozwól, że zbuduję jedną ręcznie, byś zobaczył logikę. Zacznij od bazowego niebieskiego przy odcieniu 217, w miarę pełnym nasyceniu, średniej jasności — nazwijmy go #2563EB. Teraz wygeneruj rampę, przeprowadzając jasność od bardzo jasnej do bardzo ciemnej, utrzymując odcień przy 217 i podnosząc nasycenie na obu krańcach:

Zauważ, co ta drabina ci daje. Każdy stan interaktywny, którego potrzebuje przycisk — spoczynek, najechanie, aktywny — wypada z tego samego odcienia, trzy kroki jasności od siebie. Nie wymyślasz nowych kolorów; schodzisz w dół skali. Dlatego właśnie kodowane są jako numerowane tokeny (blue-50 do blue-900) w systemach projektowych. Jeśli chcesz głębiej wejść w zamianę takiej rampy w wielokrotnego użytku zmienne, tworzenie skalowalnych tokenów kolorów podejmuje dokładnie tam, gdzie to się kończy.

Kilka wypracowanych w bólach zasad dla samej skali:

Gdzie tony zarabiają na siebie w UI

Tinty i cienie wykonują ciężką pracę w rampie UI, ale tony — przygaszone, zmieszane z szarością wersje — rozwiązują konkretny problem, którego czyste tinty i cienie rozwiązać nie potrafią: stany, które powinny się cofnąć.

Najbardziej oczywisty to zablokowane kontrolki. Zablokowany przycisk nie powinien być jaśniejszym niebieskim (to czyta się jako inny stan aktywny) — powinien być stonowanym niebieskim, odsyconym ku szarości, by jasno sygnalizował „w tej chwili niedostępne”. Weź swój #2563EB i mocno ściągnij nasycenie ku szarości, utrzymując umiarkowaną jasność, a dostaniesz coś w rodzaju #9AA6BF: wciąż lekko niebieski, oczywiście bezczynny. To ton robiący dokładnie to, czego tinty i cienie nie potrafią.

Tony to także sposób na budowanie wyrafinowanych, niekrzyczących powierzchni. Czysto szary neutralny może wydawać się zimny i oderwany od twojej marki. Stonowany neutralny — szarość z domieszką kilku procent odcienia twojej marki — sprawia, że tła i obramowania wydają się należeć do tej samej rodziny co twój kolor akcentowy. To sztuczka stojąca za wieloma paletami, które sprawiają wrażenie drogich: „szarości” wcale nie są szare, to mocno stonowane wersje głównego odcienia. To także centralny element dobrych palet trybu ciemnego, gdzie płaskie, czysto czarne powierzchnie wyglądają ostro, a lekko stonowane ciemne powierzchnie czytają się jako zamierzone.

Błędy, na których wciąż łapię samego siebie

Całość sprowadza się do tego: odcień to tylko punkt startowy. Tinty, cienie i tony to trzy sposoby, na jakie rozciągasz ten jeden punkt startowy w pełną działającą paletę — jaśniej z bielą, ciemniej z czernią, ciszej z szarością — a HSL daje ci pokrętła, by robić to z rozmysłem, a nie przypadkiem. Wybierz odcień, który lubisz, otwórz regułę monochromatyczną i przeprowadź suwak jasności od krańca do krańca. Zanim zbudujesz ręcznie jedną dobrą dziewięciokrokową rampę, już nigdy nie spojrzysz na „zestaw kolorów” tak samo. To prawie zawsze jeden kolor w dziewięciu strojach.

Najczęściej zadawane pytania

Jaka jest różnica między tintem, cieniem a tonem?

Tint to odcień z dodaną bielą, więc staje się jaśniejszy i łagodniejszy (czerwień staje się różem). Cień to odcień z dodaną czernią, więc staje się ciemniejszy i głębszy (czerwień staje się bordem). Ton to odcień z dodaną szarością, więc staje się przygaszony i bardziej przykurzony, niekoniecznie zmieniając mocno jasność (czerwień staje się przyprószoną różą). Wszystkie trzy redukują czystą barwność, czyli chromę, oryginalnego odcienia — po prostu przesuwają jasność w różnych kierunkach.

Czym dokładnie jest tint w kolorze?

Tint to to, co otrzymujesz, mieszając czysty odcień z bielą. Podnosi jasność koloru i delikatnie obniża jego intensywność, dając jaśniejszą, łagodniejszą wersję oryginału — róż jest tintem czerwieni, błękit nieba jest tintem niebieskiego. W kategoriach HSL tworzenie tintu polega głównie na zwiększaniu wartości jasności ku 100%, często z niewielkim podbiciem nasycenia, by jasny kolor nie wyglądał na wyprany.

Jak rozjaśnić lub przyciemnić kolor tak, by nie wyglądał na wyprany ani na zabłocony?

Używaj jasności jako głównego pokrętła, ale nie zamrażaj nasycenia. Przy rozjaśnianiu podnieś jasność i odrobinę podbij nasycenie, by tint pozostał bogaty, a nie zrobił się blady i cienki. Przy przyciemnianiu obniż jasność, ale lekko zwiększ nasycenie (a czasem przesuń odcień o kilka stopni ku niebieskiemu lub czerwonemu), by cień pozostał żywy, a nie zrobił się mętny. Zamrożenie nasycenia w całym zakresie to najczęstsza przyczyna, dla której skale wyglądają płasko.

Jaka jest różnica między walorem a nasyceniem?

To dwa niezależne pokrętła. Walor (jasność w HSL) kontroluje, jak jasny lub ciemny jest kolor, biegnąc od czerni przy 0% do bieli przy 100%. Nasycenie kontroluje, jak intensywny lub czysty jest kolor, biegnąc od żywego odcienia o pełnej sile przy 100% do neutralnej szarości przy 0%. Możesz zmienić jedno bez zmiany drugiego — kolor może być ciemny i żywy albo ciemny i przygaszony. Traktowanie ich jako tego samego gestu powoduje kredowe, martwe palety.

Jak zbudować monochromatyczną skalę kolorów dla UI?

Zacznij od jednego bazowego odcienia i przeprowadź jego jasność od bardzo jasnej do bardzo ciemnej w wyraźnych krokach, utrzymując odcień mniej więcej stały, podnosząc nasycenie na jasnym i ciemnym krańcu. Celuj w około dziewięć kroków, byś miał jasne tinty na tła i obramowania, kolor bazowy pośrodku do elementów głównych oraz ciemne cienie na stany najechania, aktywne i tekst. Trzymaj sąsiednie kroki widocznie różne, używaj ciaśniejszych przyrostów na jasnym krańcu i sprawdzaj kontrast tekstu osobno. Reguła monochromatyczna w generatorze palety kolorów tworzy tę strukturę automatycznie.

Chcesz poeksperymentować z kolorami?

Wypróbuj nasz darmowy generator palet kolorów, aby znaleźć idealną harmonię — z wbudowanym sprawdzaniem kontrastu WCAG.

Otwórz generator