Poznaj Techniki Pracy z UI w Figma
4 godz. 34 min · Figma · UI, UX i Webdesign
Mariusz CzepiecTen kurs jest świetnym rozwiązaniem nie tylko dla początkujących ale również dla osób, które już od jakiegoś czasu pracują w branży. Unikalne połączenie tematów jest doskonałą okazją do nauki nowych praktycznych umiejętności, a także do uporządkowania wiedzy i podniesienia swoich umiejętności na kolejny poziom. Jedyne czego potrzebujesz to podstawowa umiejętność obsługi Figmy.
Warto jeszcze raz sprawdzić, czy strona
zachowuje się tak, jak byśmy sobie tego życzyli i odpowiednio się skaluje.
Teraz mamy domyślną szerokość dla desktopu.
Sprawdźmy co się będzie działo przy większych rozdzielczościach.
Elementy się rozciągają.
Super.
Sprawdźmy zatem mniejsze ekrany, czyli skalujemy w dół.
Kiedy treści jest zbyt mało, żeby
wyświetlić ten nasz moduł z opisem w dwóch kolumnach.
Te teksty
przeskakują jeden pod drugi.
W moim nagłówku przyciski są wyrównane do prawej krawędzi.
Super. Kiedy tekst w nagłówku jest zbyt
długi, żeby wyświetlić go w dwóch kolumnach, łamie się do 3 kolumn.
I to wygląda też wciąż całkiem fajnie.
Nasze wideo w tle bardzo ładnie się kadruję.
Typografia jest po lewej stronie, po prawej stronie widzimy panią, która ćwiczy.
Super. Zobaczmy niżej.
Tutaj dzieje się coś niepokojącego.
Sprawdźmy, co tu się dzieje?
Kiedy mamy desktop, mamy 3 moduły jeden obok drugiego, skalujemy.
W pewnym momencie mamy tablet, czyli za
mało miejsca, żeby wyświetlić 3 kafelki.
Jeden kafelek spada na dół, skalujemy
dalej mamy mobile, kafelki są jeden pod drugim i wygląda to spoko.
Natomiast w trakcie skalowania
jest taki moment jak np. ten teraz, gdzie pewne elementy się na siebie nakładają.
Tu również, i oczywiście moglibyśmy poświęcić
dodatkowy czas i dopracować te autolayout'y.
To jest pewnie kwestia odpowiedniego dopracowania wartości minimum width dla
poszczególnych kafelków albo lekkiej korekty padding'ów w autolayout'cie.
Natomiast specjalnie tego nie zrobiłem.
Specjalnie tego nie zrobię, żeby pokazać,
że taki prototyp jest wystarczający do tego, aby pokazać zasadę działania.
Developer, który będzie kopiował stronę
ma dużo większe możliwości wpływania na responsywność poszczególnych elementów
i jeżeli będzie znał zasadę, jak te kafelki mają przeskakiwać, jak one mają
się zachowywać, na pewno odpowiednio to zakoduję.
Podobnie klient,
możemy mu pokazać, że tak będzie wyglądał layout na desktopie, następnie tak będzie
wyglądał na tablecie, a na mobile kafelki przeskoczą jeden pod drugi.
A ten ten drobny niuans.
To jest po prostu do wyprostowania na etapie kodowania.
Sprawdźmy dalej.
Nasz manifest na dużym ekranie wygląda fajnie. Na tablecie
jeszcze spoko, trochę za duży, ale może to będzie fajnie przeswipe'ować taką dużą
typografię, ale na mobile to myślę, że będzie lekki, lekki dramat.
Zobaczmy jak góra wygląda na mobile, bo wiemy już na pewno, że
nasz manifest jest tutaj za duży, że ten stopień pisma powinien być mniejszy.
Zobaczmy na górze.
Tu na mobile również nie wygląda to zbyt dobrze.
Stopień pisma w nagłówku jest zbyt duży
oraz ten moduł nie zachowuje się tak jak byśmy sobie życzyli, tzn.
nie dopasowuje się do szerokości urządzenia mobilnego.
Dlaczego?
A no dlatego, że ten moduł ma ustawione minimum width na 660 pixeli, co jest OK w
przypadku desktopu. Natomiast no nie jesteś w stanie tego warunku spełnić na mobile.
Czyli mamy za mało miejsca i
ten moduł się nam nie, nie dopasuje do wielkości ekranu.
I to jest jak najbardziej normalna sytuacja.
Musisz wiedzieć, że nawet najlepiej
zaprojektowany responsywny layout z samymi autolayout'ami, świetnie z
parametryzowanymi, będzie wymagał pewnych korekt w
wyświetlaniu na poszczególnych break point'ach.
Chociażby takie elementy jak właśnie stopień pisma, no który musi się zmniejszyć
na mniejszych urządzeniach czy margines, który u nas fajnie wygląda na desktopie.
Ale już 48 pixeli to jest za dużo na mobile,
więc takie rzeczy muszą być dopasowane dla poszczególnych break point'ów.
I tu z pomocą przychodzi nam local wearables.
Przygotowałem swoje local wearables w taki sposób, że dla poszczególnych break
point'ów. Desktop, tablet, mobile stworzyłem token'y odpowiadające za
odpowiednią szerokość layout'u, domyślną oraz maksymalną.
Również przygotowałem odpowiednie token'y
odpowiadające za spacing'i czy marginesy.
I te odległości są na tablecie i mobile'u dużo mniejsze niż w przypadku desktopu.
Przypisze teraz do swojego home page'a za
pomocą local wearables domyślną szerokość strony.
Klikam apply wearable i wybieram layout width.
Teraz szerokość mojego layout'u jest zdefiniowana za pomocą lokalnej zmiennej.
Pamiętaj, że jeżeli nawet o kawałek przeskalujesz swój layout, automatycznie, ta
zmienna zostanie odpięta nawet jak wrócisz do poprzedniego rozmiaru.
Więc upewniam się jeszcze raz, że mam
podpiętą odpowiednią zmienną z local wearables.
Bardzo fajną funkcją local wearables jest to, że poszczególne kolumny mode możemy
przypisać do komponentów frame'ow, a nawet całej sekcji.
Zobacz jak możesz to wykorzystać w testowaniu responsywności swoich layout'ów.
Przygotuję sobie teraz 3 sekcje.
Klikam Shift S.
I tworzę pierwszą sekcję.
Nazwę ją desktop.
Drugą nazwę tablet.
A trzecią nazwę mobile, skopiuje swój layout.
I wkleję do każdej sekcji.
W tym momencie we wszystkich 3 sekcjach moje layout'y wyglądają identycznie.
Natomiast kiedy zaznaczę wybraną sekcję,
to po prawej stronie w panelu layer mogę przypisać do tej konkretnej sekcji.
Wybraną kolumnę mode dla wersji desktop przypisze desktop.
I tu niewiele się zmieniło, ponieważ pracowaliśmy na zmiennych dla desktopu.
Do wersji tablet przypisze
tablet.
Zobacz co się zadziało.
Automatycznie została przypisana odpowiednia wartość
width.
Przez to layout się z więził.
To zobaczmy jeszcze mobile.
Zobacz, masz ten sam layout w 3 sekcjach.
I za pomocą local wearables podmieniane są
parametry takie jak szerokość czy marginesy padding'i.
Fajnie działa samo przeciąganie layout'ów między jedną a drugą sekcją, automatycznie
przechwytują odpowiednie zmienne i dopasowują swój wygląd.
Niestety, wciąż za pomocą lokalnych
zmiennych nie możemy wpływać na stopień pisma, chociaż layout nam się dopasowuje.
Jeżeli chodzi o rozmiary takich elementów jak marginesy,
padding czy maksymalna szerokość layout'u, to na style tekstowe nie możemy wpływać.
Czekam bardzo na tę funkcję.
Tak samo jak bardzo czekam na opcje, aby
móc wielkości elementów ustawiać za pomocą procentów, a nie tylko na sztywno pixeli.
Mam nadzieję, że wkrótce taka aktualizacja się pojawi.
Natomiast w tym momencie musimy sobie poradzić w inny sposób,
np. po prostu zmieniając ręcznie styl tekstowy na jakiś inny.
Innej, innej opcji w tym momencie nie ma.
Czyli na tablecie i desktopie będziemy mieli tutaj
heading 1 dla mobile'a zmienimy na heading 2.
Oczywiście można to załatwić w inny sposób.
Moglibyśmy sobie stworzyć oddzielnie style tekstowe dla desktopu i tam byśmy mieli
heading 1 desktop i oddzielnie style tekstowe dla mobile'a i np.
stworzyć tam heading 1 dla urządzenia mobilnego.
Więc w ten sam sposób
powinienem np. zmienić tutaj styl tekstowy i zobacz kiedy zmienię teraz cały ten blog
z manifestem jest bardzo długi, natomiast kiedy zmienię ten styl i stopień pisma.
On jest mniejszy.
Tutaj nam się wszystko
pięknie dopasowało.