Co projekt, to inne metody zarz膮dzania kolorami w CSS. Najcz臋艣ciej regu艂 albo nie ma, albo s膮 zbyt 艣cis艂e, co powoduje sporo problem贸w. W poni偶szym wpisie postaram si臋 przedstawi膰 prosty przyk艂ad dotycz膮cy tego, jak mo偶na 艂adnie poradzi膰 sobie z kolorami w aplikacji.
Prosty przyk艂ad
Wyobra藕 sobie 偶e zaczynasz niewielki projekt i dodajesz do niego kilka styl贸w. Z czasem widzisz, 偶e pojawiaj膮 si臋 niesp贸jno艣ci je艣li chodzi o kolory. Przyk艂adowo
Mamy tu ju偶 3 rozbie偶no艣ci. Kolor mo偶na zadeklarowa膰 w hex za pomoc膮 trzech lub wi臋cej znak贸w, w klasie item dodatkowo zapisujemy background-color po prostu nazw膮 koloru, co jest odradzane. Dodatkowo, kolory mo偶na zapisywa膰 nie tylko w warto艣ciach hexadecymalnych, ale tak偶e w HSL, HSV i RGB. Warto艣ci kolor贸w u偶yte w przyk艂adzie s膮 hipotetyczne :).
Problem pojawi si臋 gdy b臋dziesz mia艂 coraz wi臋cej kodu i ka偶dy kolor dla ka偶dego elementu b臋dzie okre艣lany osobno za pomoc膮 r贸偶nych warto艣ci.
Dobrym wyj艣ciem b臋dzie wydzielenie kodu dotycz膮cego kolor贸w do custom properties.
Warto usp贸jni膰 spos贸b okre艣lania kolor贸w.Na ten moment nie potrzebuj臋 przezroczysto艣ci, dlatego ustawiam kolory jako hex zawieraj膮cy zawsze 6 znak贸w. Kolory mamy teraz zgromadzone w jednym miejscu i mo偶emy ich reu偶ywa膰.
Pojawia si臋 pytanie - jak bardzo rozdrabnia膰 si臋 w nazewnictwie kolor贸w. Przyk艂adowo, w aplikacji na pewno b臋dziesz potrzebowa艂 koloru do okre艣lania tego jak ma prezentowa膰 si臋 tekst. Spotka艂em si臋 z rozwi膮zaniem polegaj膮cym na okre艣laniu osobno koloru dla tabeli, sekcji czy nag艂贸wk贸w. Albo z osobnym stylowaniem ka偶dej gwiazdki oznaczaj膮cej wymagalno艣膰, niezale偶nie od tego w kt贸rym miejscu si臋 znajdowa艂a.
Kolor贸w powstaje wtedy ca艂e multum i w sekcji zmiennych pojawia si臋 mn贸stwo duplikacji. Moim zdaniem nie ma to zbyt du偶ego sensu. Je艣li elementy maj膮 by膰 ostylowane sp贸jnie, to wystarczy im jeden wsp贸lny kolor.
Warto zastanowi膰 si臋 nad kwesti膮 nazewnictwa kolor贸w. Mo偶na nazywa膰 je semantycznie i wtedy nazwa odpowiada za to, co robi dany kolor. Tak zrobi艂em w przedstawionym kodzie, okre艣laj膮c kolor t艂a i kolor czcionki i dziel膮c je na g艂贸wne i podrz臋dne. Drugie podej艣cie to po nazywanie koloru zielonego zielonym itd.
Id膮c dalej, w nowoczesnej aplikacji prawdopodobnie b臋dziesz mia艂 wyb贸r trybu ciemnego i jasnego. Poniewa偶 mamy kolory wydzielone do jednej "dziedziny", mo偶emy 艂atwo je odwr贸ci膰.
Linter do CSS oraz na co zwraca膰 uwag臋 przy review
Obrazki z kodem wykona艂em za pomoc膮 chalk.ist
Brak komentarzy:
Prze艣lij komentarz