Komponenty
3 godz. 56 min · Figma · UI, UX i Webdesign
Natalia BieniasHead of Design w Mobee DickDla UI designera każdy szczegół ma znaczenie. Patrząc na to, z czego składają się interfejsy, można uprościć i powiedzieć, że są to właśnie kształty geometryczne, teksty lub ewentualnie ikony. Do tego dochodzi aspekt stosowania barw i dodatkowych efektów, które mają zbudować hierarchię wizualną w projekcie. Aby budować skuteczne interfejsy, trzeba dokładnie przyjrzeć się każdemu elementowi – a w tym warsztacie omówimy przyciski i linki tekstowe.
Oczywiście, nie będziemy opowiadać o projektowaniu tylko na bazie teorii. W Kursie poznasz wiele praktycznych wskazówek opartych między innymi na popularnym Material Designie. Poznasz porady, które z łatwością zastosujesz w swoich projektach, a także omówimy stany interakcji. Przekonasz się jakie najważniejsze elementy wizualne trzeba wziąć pod uwagę w projektowaniu.
W Kursie omówimy projektowanie takich elementów interfejsu, jak przyciski, formularze, taby i zakładki, listy i tabele czy wyskakujące okna. Przekonasz się jakich zasad warto przestrzegać, tak, by całość była estetyczna i wygodna dla użytkownika.
Dużą część Kursu poświęciliśmy na omówienie praktycznych wskazówek, dzięki którym będziesz sprawnie projektować wygodne interfejsy. Dowiesz się co robić, a czego unikać, tak, by nie powielać częstych błędów w projektowaniu.
W trakcie Kursu omówimy również stany interakcji na przykładzie popularnych Design Systemów - czyli Material, Carbon czy Fluent. Dowiesz się czym się różnią i jak wpłyną na proces projektowania elementów interfejsu.
Ten Kurs stworzony został z myślą o początkujących projektantach, którzy chcą stosować najlepsze techniki podczas projektowania interfejsów. Kurs pomoże też świetnie ugruntować zdobytą już wiedzę na temat elementów wizualnych.
No dobrze, przejdźmy do tego, jak
wyglądają te komponenty i na co zwrócić uwagę.
Podstawą będzie kontener, czyli tło naszego okienka.
W związku z tym, że wyświetla się nad inną treścią, raczej odradzam tworzenia pół
przezroczystych teł, bo wpłynie to na czytelność komponentu.
Nie oznacza to jednak, że musimy
ograniczać się do klasycznej bieli czy szarości.
Ważne, by dostosować kolory tak, by
eksponowały treści w okienku, a nie odwracały od nich uwagę.
Najczęściej spotkacie się z okienkami w
formie prostokąta z lub prostokąta z zaokrąglonymi rogami.
Ale jeśli potrzebujemy, jeśli wynika to z identyfikacji marki i stylu aplikacji, to
nasze okienka mogą przyjąć dowolny kształt.
Warto pamiętać jednak, że zastosowanie nieregularnych kształtów będzie wiązało
się z innym sposobem tworzenia takiego komponentu od strony kodu
i dużo trudniej będzie nam myśleć o responsywności czy skrajnych przypadkach,
gdy treści w okienku będzie bardzo dużo lub bardzo mało.
Oprócz kształtu musimy przewidzieć również wielkość okna,
bo to wraz z rozdzielczością prawdopodobnie będzie się zmieniać.
Małe okienko, które zgrabnie wygląda na
ekranie telefonu, nie będzie już zbyt wygodne w użyciu na dużym monitorze.
Dlatego musimy przewidzieć skalowanie
okienka, a to będzie zależne od tego, jakiego typu treści znajdą się w środku.
Jeśli są to tylko teksty, prawdopodobnie nie będzie powiększało się dużo bardziej.
Jeżeli na ekranie mobilnym policzyliśmy,
że nasze okno nie powinno być mniejsze niż np.
80% szerokości i wysokości ekranu, to na monitorze Full HD i wyższym będzie mieć
będziemy mieć okno giganta, a w środku masę pustej przestrzeni.
Na szerokość okna trzeba uważać również w
przypadku komponentu z dużą ilością tekstów.
Jeśli będzie zbyt szerokie, wiersz tekstu zrobi się nieznośnie długi,
a to sprawi, że czytanie będzie niewygodne.
Musimy więc założyć maksymalne wielkości takiego okna i tę informację najlepiej z
wizualizacją przekazać programistom, którzy będą wdrażać nasze rozwiązania.
Okno nie powinno również przekraczać
wysokości ekranu, bo jest szansa, że stworzymy niechcący podwójnego scrolla.
Wewnątrz okna i na zewnątrz, co znacznie utrudni korzystanie z interfejsu.
Najlepiej nie planować sztywnych wysokości okienka na stronach w pikselach.
Przede wszystkim dlatego, że nie mamy
pewności, ile miejsca faktycznie zajmie przestrzeń strony.
Możemy co prawda sprawdzić
najpopularniejsze rozdzielczości stron internetowych,
korzystając z ogólnodostępnych statystyk, ale weźmy pod uwagę, że te statystyki
sprawdzają rozdzielczość ekranu, a nie faktyczną zawartość strony.
Strony internetowe przeglądamy w
przeglądarkach, więc musimy doliczyć wysokość interfejsu tej przeglądarki.
To wysokość tabów, paska do wpisywania adresu, ale często również paska zakładek.
To odejmuje nam na wysokości strony, dlatego bezpieczniejsze będą np.
wartości procentowe i określenie maksymalnej i minimalnej wysokości.
Warto zastanowić się, w jaki sposób chcemy odcinać nasze okienko od reszty treści.
Możemy zrobić to przez zastosowanie półprzezroczystego tła pod okienkiem.
Wtedy skupiamy użytkownika wyłącznie na tym komponencie,
Ale jeśli okienko nie jest najbardziej kluczowym elementem na ekranie, możemy
skorzystać z cieni, które wyciągną okienko trochę na wierzch.
Jeżeli wymagamy od użytkownika akcji,
która znajduje się w obrębie tego okienka, to raczej stosujemy pełne tło pod oknem
tak by użytkownik przypadkiem go nie przeoczył i nie denerwował się, że np.
nie może przewijać treści lub klikać w
inne elementy, bo wyskakujące okno automatycznie je zablokowało.
Warto jeszcze pamiętać o jednej rzeczy w kontekście tła.
Jeśli projektujemy okienko i pozwalamy
użytkownikowi je po prostu zamknąć bez interakcji z elementami w środku,
to możemy funkcję zamknięcia dać również na kliknięcie lub tapnięcie w tło.
To samo dotyczy klawisza Escape na klawiaturze, który
często pozwala nam właśnie zamykać takie wyskakujące okienka.
Wszystko zależy oczywiście od tego, jaki jest cel tego okienka i jakie decyzje
podejmiecie razem z developerami tego rozwiązania.
Dobrą praktyką jest jednak danie
użytkownikowi możliwie szerokiego pola manewru.
Zwłaszcza, gdy wiemy, że użytkownicy mogą
właśnie w ten sposób korzystać z naszego interfejsu.
No właśnie, a jak już przy wyłączaniu okienka jesteśmy, to warto przewidzieć
miejsce na ikonkę krzyżyka, która zamyka okienko.
Zachęcam do tego, żeby umieszczać ją na
tle okna, dzięki czemu będzie bardziej widoczna.
Bo możecie spotkać się z projektami, które
wyciągają opcję zamknięcia jako element poza okienkiem.
To trochę nie ma sensu, bo tracimy kontekst ikony.
Jeśli jest zamknięta w jakimś obszarze, no to
raczej spodziewamy się, że działa właśnie na ten obszar.
Dodatkowo umieszczane często cienkie ikony
ciemne na ciemnym tle są po prostu niewidoczne.
Jeśli damy możliwość zamykania okienka tylko taką ikoną, to użytkownik może
nieźle zirytować się poszukiwaniem jej w takiej sytuacji.
Oprócz ikony możemy dodać również oczywiście etykietę tekstową.
No ale przydałby się jeszcze tytuł.
W zależności od kompozycji naszego okienka będzie największym komunikatem.
Lub wręcz przeciwnie będzie pełnił rolę dodatkowej informacji, która ma tylko
wesprzeć zrozumienie kontekstu, w którym znalazł się użytkownik.
Przy krótkich komunikatach błędu zdarza
się, że tytuł jest jedyną treścią, którą znajdziemy w okienku.
Ale warto od razu przewidywać, co stanie się, gdy trzeba umieścić więcej treści.
I treści tych może być mniej lub więcej.
Teksty mogą składać się z jednego zdania lub całych akapitów, na przykład, gdy
okienko pokazuje regulamin serwisu albo politykę prywatności.
Jeżeli mamy teksty, które nie mieszczą się
w trzech linijkach, najlepiej formatować je do lewej strony.
Przy długich, wyśrodkowanych tekstach będzie nam się czytało dużo trudniej,
ponieważ nasz wzrok po skończeniu czytania linijki musi szukać początku kolejnej.
A tak przez nierówną szerokość wierszy
zaczyna się za każdym razem w innym miejscu.
Dlatego długie teksty formatujemy do lewej strony, bo jest to dla nas naturalne.
Czytamy od lewej do prawej i będzie wyglądało schludniej.
Jeśli mamy długie treści, zaplanujmy
wygląd scroll bara tak, by pasował do stylu aplikacji.
A także zaplanujmy miejsce, gdzie jest scrollowana
przestrzeń zaczyna się i kończy, by mieć
pewność, że nie znajdzie się zbyt blisko tytułu czy przycisków.
Poza tekstami w obrębie okna dialogowego mogą oczywiście pojawiać się inne typy
treści, jak zdjęcia i ilustracje czy interaktywne komponenty,
pola formularzy, rozwijanej listy czy pola wielokrotnego wyboru.
Im więcej elementów, tym bardziej będziemy
musieli przemyśleć grid, który zastosujemy w środku.
To ważne, by pamiętać, że grid, którego używamy w okienku, nie musi być dokładnie
tym samym, którego używamy na pozostałej części strony.
Często będzie nas po prostu ograniczał,
dlatego warto przewidzieć grid do tak specyficznej, często małej przestrzeni.
Pamiętajmy tym samym o dobrych praktykach, więc jeśli umieszczamy w oknie dialogowym
dużo pól formularzy, to lepiej, żeby była to jedna z scrollowana kolumna.
Zamiast próby umieszczenia trzech czy
nawet czterech kolumn pól tylko po to, by zmieścić nasze treści w viewport'cie.
I przyciski
właściwie w wielu przypadkach jeden z najważniejszych elementów wyskakujących
okienek, które mogą zaważyć na użyteczności komponentu.
Pewnie nie raz spotkaliście się z okienkami, które niektórych niezrozumiałe
polecenia w przyciskach wprawiły w konsternację.
To jedna z rzeczy, na które musimy bezwzględnie zwrócić uwagę, bo nawet
najładniej zaprojektowane okienko będzie bezużyteczne, gdy użytkownik nie będzie
miał pewności, co stanie się po kliknięciu w jeden z przycisków.
Dbajmy więc o to, by nazwy były przede wszystkim jednoznaczne
i nie pozostawiały wątpliwości co do skutków dalszych działań.
Żeby pomóc użytkownikowi zrozumieć główną
akcję okienka, możemy również wyróżnić jeden z przycisków przez inne ostylowanie
nadanie koloru, grubości obramowania czy powiększenie.
Spotkacie się również z projektami, tak jak widzicie właśnie na ekranie,
które dla jeszcze większego kontrastu układają obok siebie przycisk głównej
akcji oraz tekstowy link z akcją drugorzędną.
Mając te wszystkie elementy zamknięte w jakiejś przestrzeni, pamiętamy o roli
pustych przestrzeni marginesów w naszym projekcie.
Teksty i przyciski nie powinny znaleźć się zbyt blisko krawędzi, bo będą dawały
wrażenie ściśniętych, nieprzyjemnych dla oka.
Jeśli stosujemy grid wewnątrz okienka,
upewnijmy się, że marginesy zewnętrzne dyktujące odległość treści od krawędzi
nie będą mniejsze niż marginesy między elementami w okienku.
Na koniec warto zaplanować też położenie okienka.
Zazwyczaj wyświetlamy je w górnej części
ekranu na środku, ale to też może zależeć od kontekstu.
Jeżeli projektujemy okienka, które
wyświetlają się w trakcie on boarding użytkownika,
będące tak naprawdę formą instrukcji i zachęcenia do wykonania jakichś działań,
lepiej będzie pokazać je w pobliżu elementu, którego dotyczą.