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.
Tworzenie projektów z wykorzystaniem funkcji autolayout nie tylko przyśpieszy
Twoją pracę, ale również ułatwi współpracę z developerami.
Korzystają oni z funkcji flexbox, która
jest opcją w HTML/CSS pozwalającą na efektywne układanie, wyrównywanie i
dystrybucję elementów w ramach kontenera. Przestrzeni, w której się znajdują.
Na ekranie widzimy kilka kontenerów przedstawionych za pomocą czarnej linii
oraz pewne elementy wewnątrz tych kontenerów.
Są one wypełnione czerwonym kolorem.
Już same te poszczególne kafelki przypominają nam w jakiś sposób
okno dialogowe panelu autolayout w Figm'ie, prawda?
Przejdźmy przez te przykłady, żeby dobrze zrozumieć, jak działa flexbox.
Funkcja flex-direction odpowiada za
kierunek wyświetlania elementów wewnątrz kontenera.
Jeżeli wybierzemy opcję row,
nasze elementy w kontenerze zostaną ułożone w linii jeden obok drugiego.
Jeżeli wybierzemy funkcję column, elementy będą wyświetlane jeden pod drugim.
Za pomocą funkcji Flex-direction możemy
również zmienić kolejność wyświetlania elementów.
Służy do tego row reverse lub column reverse.
Funkcja align-items pozwala na wyrównanie elementów względem siebie.
Na jednym z przykładów widzimy elementy wyrównane do środka.
Odpowiada za to opcja center.
Kiedy wybierzemy opcję flex end, elementy zostaną wyrównane do dolnej krawędzi.
Gdybyśmy wybrali opcję Flex start, zostaną one wyrównane do górnej krawędzi.
Bardzo fajną i przydatną funkcją jest funkcja stretch.
W tym momencie wszystkie elementy zostaną rozciągnięte w taki sposób, aby przyjęły
one wysokość najwyższego elementu w danym kontenerze.
Jest to wyrównanie względem siebie,
ale co jeżeli chcemy wyrównać elementy wewnątrz kontenera?
Do tego służy funkcja align-content.
Align-content odpowiada za ułożenie elementów w pionie jeden pod drugim.
Jeżeli wybierzemy opcję flex start, elementy będą układane od góry do dołu.
Jeżeli wybierzemy opcję flex end, będą one układane od dołu kontenera do góry.
Zauważcie, że używamy podobnych funkcji flex and, flex start.
Natomiast w przypadku align-items flex end
tyczy się linii elementów, które wyrównujemy.
W przypadku align-content tyczy się to początku kontenera.
Jeżeli chcemy, aby elementy były rozłożone
w równej odległości między sobą, możemy skorzystać z funkcji space between.
Możemy również elementy rozciągnąć.
Podobnie jak w przypadku align-items.
Korzystamy z funkcji stretch.
Za rozłożenie elementów w poziomie odpowiada funkcja justify-content.
I podobnie możemy skorzystać z opcji flex start i flex end.
Flex start będzie informacją, że elementy powinny być układane od lewej
krawędzi do prawej, a w przypadku flex end od prawej do lewej.
Możemy również skorzystać z funkcji space between.
I tutaj również elementy zostaną rozłożone równolegle między sobą.
Dodatkowo, jeżeli mają wypełnić cały
kontener, odległość między krawędziami kontenera a elementami będzie taka sama.
Bardzo podobną funkcją, z drobną różnicą jest space around.
Polega ona na tym, że
każdy element ma swój margines i o ten margines elementy są od siebie odsunięte.
To znaczy, że między poszczególnymi
elementami interfejsu odległość może być dwukrotnie większa niż
odległość między elementem a krawędzią kontenera.
Chciałbym Ci teraz pokazać przykładowy
moduł strony internetowej wykonany w całości za pomocą funkcji autolayout.
Kiedy uruchomimy tryb dev mode w Figm'ie
możemy dokładnie prześledzić jak będzie wyglądała klasa CSS opisująca ten moduł.
Popatrzmy w prawe okno layout.
Już na samym początku widzimy, że dany
moduł powinien być wyświetlany za pomocą funkcji flexbox.
Następnie poniżej widzimy parametr flex direction ustawiony na opcję column.
To znaczy, że wszystkie elementy powinny być wyświetlone jeden pod drugim.
Możemy jeszcze zobaczyć, że jest funkcja align self stretch.
Znaczy to, że wszystkie elementy powinny wypełniać kontener, rozciągać się w miarę
tego, jak ten kontener będzie zmieniał swój rozmiar.
Jak widzicie, funkcja autolayout działa dokładnie jak funkcja flexbox w CSS.
Nawet sam wygląd panelu,
gdzie ustawiamy parametry autolayout przypomina wizualną interpretację tego,
jak zachowują się moduły zakodowane za pomocą klasy flexbox.