Siatki i układy w Figma: jak ustawić grid pod web, mobile i dashboard bez „pływania” elementów

Praktyczny przewodnik po siatkach w Figma: layout grids, system 8pt, constraints i Auto Layout. Ustawiaj grid pod web, mobile i dashboardy oraz napraw „pływanie” elementów checklistą.
23 kwietnia 2026
blog

1. Podstawy siatek w Figma: layout grids (kolumny, marginesy, gutter) i kiedy ich używać

Siatki w Figma (Layout Grid) to wizualny „szablon” pomagający układać elementy równo, przewidywalnie i w spójnych odstępach. Najczęściej służą do porządkowania układu na frame’ach ekranów (web, mobile, dashboard), tak aby elementy trafiały w te same linie odniesienia, a wyrównania nie były robione „na oko”.

W Figma Layout Grid jest właściwością konkretnego frame’a. Możesz mieć różne siatki dla różnych ekranów, a nawet kilka siatek na jednym frame’ie (np. osobną do kolumn i osobną do rytmu poziomego), ale w praktyce warto zaczynać od jednej, czytelnej siatki dopasowanej do typu projektu.

Czym jest layout grid i co daje w praktyce

  • Ujednolica wyrównania — elementy (np. karty, formularze, wykresy) łatwiej układać względem tych samych pionowych linii.
  • Kontroluje „oddech” układu — dzięki marginesom i gutterom widzisz, gdzie kończy się bezpieczny obszar treści oraz ile miejsca zostaje między kolumnami.
  • Ułatwia spójność między ekranami — jeśli kolejne widoki korzystają z tej samej logiki siatki, różnice między nimi są celowe, a nie przypadkowe.
  • Pomaga w komunikacji — grid jest wspólnym punktem odniesienia dla projektanta i osoby wdrażającej (łatwiej ustalić szerokości, wyrównania i zasady układu).

Główne typy layout grids w Figma

W praktyce najczęściej spotkasz trzy rodzaje siatek, z których każda ma inny cel:

  • Columns (kolumny) — pionowy podział obszaru treści na równe (lub kontrolowane) kolumny. To podstawowa siatka do większości układów web i dashboard, a czasem także mobile (zwłaszcza gdy projektujesz moduły, które muszą się ładnie skalować).
  • Rows (wiersze) — poziome pasy, przydatne do pilnowania rytmu pionowego (np. sekcji, bloków treści, list). Dobrze wspiera konsekwencję w układach, gdzie ważne są powtarzalne wysokości i odstępy.
  • Grid (kwadratowa) — równomierna siatka w obu osiach, częściej używana jako pomoc do ogólnego „snapowania” i pilnowania regularności, rzadziej jako główny system układu stron z kolumnami.

Kolumny, marginesy i gutter — co oznaczają

Jeśli myślisz o gridzie jak o obszarze, w którym ma „siedzieć” treść, te trzy parametry są kluczowe:

  • Kolumny — liczba pionowych pól, w które dzielisz obszar treści. Więcej kolumn daje większą elastyczność w komponowaniu różnych szerokości modułów (np. 4/12, 6/12, 8/12), ale też wymaga większej dyscypliny w składaniu elementów.
  • Marginesy (margins) — odstęp od krawędzi frame’a do pierwszej/ostatniej kolumny. Wyznacza „bezpieczny” obszar, w którym zwykle umieszczasz główną treść, aby nie przyklejała się do brzegu i dobrze wyglądała na różnych rozmiarach.
  • Gutter — odstęp między kolumnami. To wbudowany „kanał” separujący moduły, który pomaga zachować spójne przerwy bez ręcznego mierzenia za każdym razem.

Ważne: marginesy i gutter to nie tylko estetyka. To także prosty sposób na ograniczenie przypadkowych odstępów, które później sprawiają wrażenie, że elementy „pływają”.

„Stretch” vs „Center” — jak grid zachowuje się przy różnych szerokościach

Siatka kolumn może być ustawiona tak, aby:

  • Rozciągała się wraz z frame’em (kolumny i/lub gutter adaptują się do szerokości) — podejście dobre, gdy projektujesz na różne szerokości i chcesz zachować ten sam podział na kolumny w szerokim zakresie.
  • Była wyśrodkowana i trzymała stałą szerokość obszaru treści — podejście dobre, gdy chcesz pilnować maksymalnej czytelnej szerokości treści (częste w web), a nadmiar miejsca po bokach traktujesz jako „tło” lub obszar drugorzędny.

Dobór zależy od tego, czy priorytetem jest stała szerokość treści (czytelność i kontrola), czy pełniejsze wykorzystanie dostępnego miejsca (np. duże ekrany, dashboardy).

Kiedy używać layout grids, a kiedy wystarczy wyrównanie „na oko”

Layout grids warto włączać zawsze, gdy układ ma być powtarzalny i skalowalny. W szczególności:

  • Strony i widoki z wieloma modułami (sekcje, karty, listy, panele) — grid pomaga utrzymać wspólne linie i równe przerwy.
  • Dashboardy — tam, gdzie obok siebie istnieje wiele bloków o różnych szerokościach, a wyrównania są kluczowe dla czytelności danych.
  • Projekty przekazywane do wdrożenia — siatka jest jasnym sygnałem, jaka jest logika układu i jakie są punkty odniesienia.

Z kolei w prostych, jednorazowych widokach (np. pojedynczy ekran marketingowy o nietypowej kompozycji) grid nadal może pomagać, ale nie zawsze musi być „władcą” kompozycji. Jeśli layout jest celowo asymetryczny, siatka może być bardziej delikatnym przewodnikiem niż sztywną regułą.

Jak myśleć o siatce, żeby nie przeszkadzała

  • Traktuj siatkę jako system odniesienia, nie jako konieczność wypełniania każdej kolumny.
  • Projektuj modułami — elementy (karty, sekcje, panele) łatwiej „wkładać” w kolumny niż pojedyncze, drobne obiekty.
  • Ustal, co jest treścią główną i pilnuj, aby trzymała się obszaru wyznaczonego marginesami; elementy dekoracyjne mogą żyć poza nim, jeśli to świadoma decyzja.

Dobrze ustawiony layout grid nie ogranicza kreatywności — ogranicza przypadkowość. Dzięki temu układ wygląda stabilnie, a elementy sprawiają wrażenie osadzonych w jednym, spójnym systemie.

System 8pt: spacing, odstępy, skala i spójność w projektach web/mobile/dashboard

System 8pt to prosta zasada porządkowania odstępów: większość wartości spacingu (marginesy, paddingi, przerwy między elementami) opiera się o wielokrotności 8. Dzięki temu interfejs jest przewidywalny, łatwiejszy do utrzymania i mniej podatny na „rozjeżdżanie się” wizualne podczas rozbudowy projektu.

W praktyce nie chodzi o to, by wszystko było równe 8, 16, 24 itd., tylko by mieć spójną skalę odstępów i konsekwentnie jej używać. Najczęściej skala obejmuje zarówno małe przerwy (np. między ikoną a etykietą), jak i duże oddechy (np. między sekcjami).

Podczas szkoleń Cognity ten temat wraca regularnie – dlatego zdecydowaliśmy się go omówić również tutaj, w kontekście siatek i układów w Figma.

Dlaczego akurat 8?

  • Spójność wizualna: elementy „układają się” w rytm, który łatwo utrzymać w całym projekcie.
  • Skalowalność: gdy projekt rośnie, szybciej dobierasz poprawne odstępy bez każdorazowego „mierzenia na oko”.
  • Zbieżność z typowymi platformami: wiele systemów projektowych i bibliotek UI naturalnie pracuje w krokach 8 lub ich pochodnych.

Jak rozumieć spacing w kontekście 8pt

W systemie 8pt warto myśleć o odstępach jako o zestawie poziomów, które przypisujesz do typowych sytuacji. Przykładowo:

  • Odstępy wewnętrzne (padding): ile „powietrza” ma komponent w środku.
  • Odstępy zewnętrzne (margins): jak daleko komponent stoi od innych elementów.
  • Odstępy między elementami (gap/spacing): przerwy w układach typu lista, toolbar, formularz.
  • Odstępy sekcyjne: większe przerwy rozdzielające bloki treści (np. nagłówek strony vs. zawartość).

Najważniejsze jest, by te kategorie miały logiczne, powtarzalne wartości. Wtedy podobne elementy zachowują podobny rytm w różnych miejscach produktu.

Kiedy dopuszczać wyjątki (np. 4pt)?

W wielu zespołach standardem jest podejście „8 jako baza, 4 jako półkrok”. Ma to sens, gdy potrzebujesz delikatniejszego dopasowania, np. w gęstych interfejsach lub w mikro-odstępach (ikonka–tekst, separacja w chipach, drobne wyrównania optyczne). Kluczowe jest, aby wyjątki były świadome i ograniczone, a nie wynikały z przypadkowego przesuwania elementów.

Web, mobile i dashboard: różnice w odczuciu „gęstości”

Ten sam system 8pt możesz stosować w różnych produktach, ale inaczej rozkładają się priorytety:

  • Web (marketing, content): zwykle korzysta z większych oddechów (większe odstępy sekcyjne), bo liczy się czytelność, hierarchia i „lekkość” layoutu.
  • Mobile: spacing musi wspierać ergonomię i czytelność na małej powierzchni; częściej operuje się średnimi wartościami, a konsekwencja pomaga uniknąć wrażenia ciasnoty lub przypadkowości.
  • Dashboardy (data-heavy): często wymagają większej gęstości informacji, więc częściej pojawiają się mniejsze kroki (np. półkrok), ale nadal w ramach tej samej skali, żeby interfejs nie wyglądał na „poskładany z różnych części”.

Spójność: najważniejsza korzyść systemu 8pt

System 8pt działa najlepiej, gdy traktujesz go jak wspólny język całego zespołu. Spójne wartości spacingu ułatwiają:

  • utrzymanie jednolitego wyglądu między ekranami i modułami,
  • projektowanie komponentów, które „pasują” do siebie bez ręcznych korekt,
  • szybkie podejmowanie decyzji (wybierasz z ustalonej skali, zamiast wymyślać nowe wartości),
  • redukcję drobnych różnic, które później kumulują się jako wrażenie „pływania” i braku wyrównania.

Jeśli w projekcie często pojawiają się wartości typu 13, 19 czy 27 bez wyraźnego powodu, to zwykle sygnał, że brakuje jednej skali spacingu albo nie jest ona konsekwentnie używana.

3. Constraints i zachowanie elementów przy zmianie rozmiaru: zasady, typowe konfiguracje i pułapki

Constraints w Figma definiują, jak warstwa zachowuje się względem swojego rodzica (frame’a), gdy ten zmienia rozmiar. To podstawowe narzędzie do kontrolowania „przyklejenia” elementów do krawędzi, utrzymania proporcji lub rozciągania w osi — tak, aby układ nie wyglądał na przypadkowo rozjechany po zmianie szerokości/wysokości.

Na czym polegają constraints (w skrócie)

  • Oś pozioma (Horizontal): element może trzymać się lewej/prawej, być wyśrodkowany, rozciągać się lub skalować.
  • Oś pionowa (Vertical): analogicznie — góra/dół, środek, rozciąganie, skala.
  • Punkt odniesienia to zawsze frame nadrzędny (nie grid i nie „ekran” jako taki).
  • Constraints nie „wiedzą”, co jest obok — nie dbają o relacje między rodzeństwem. Pilnują tylko relacji dziecko–rodzic.

Najczęściej używane tryby i kiedy je wybierać

W praktyce chodzi o dopasowanie zachowania do roli elementu: czy ma zostać w rogu, trzymać margines, rozciągać się jak tło, czy utrzymać środek kompozycji.

Tryb Co robi przy resize rodzica Typowe zastosowanie
Left / Top Trzyma stały offset od lewej/góry Logo w lewym górnym rogu, tytuły sekcji, elementy nawigacji
Right / Bottom Trzyma stały offset od prawej/dół Przyciski „Zapisz” w prawym dolnym rogu, ikony w prawym górnym
Center Utrzymuje wyśrodkowanie względem osi Empty states, modale, hero z centralnym CTA
Left & Right (Stretch) Trzyma oba marginesy, rozciąga szerokość Paski wyszukiwania, kontenery treści, nagłówki tabel
Top & Bottom (Stretch) Trzyma oba marginesy, rozciąga wysokość Tła sekcji, panele boczne, obszary wykresów w dashboardach
Scale Skaluje pozycję i rozmiar proporcjonalnie Rzadko: ilustracje/kompozycje, które mają „rosnąć” razem z frame’em

Typowe konfiguracje (szybkie wzorce)

  • Header na pełną szerokość: element tła/sekcji → Left & Right, zawartość po lewej (np. tytuł) → Left, akcje po prawej → Right.
  • Sidebar + content: sidebar → Left + (opcjonalnie) Top & Bottom jeśli ma się ciągnąć po wysokości; content → Left & Right.
  • Przycisk w rogu: Right + Bottom (gdy ma trzymać dystans od krawędzi niezależnie od rozmiaru).
  • Modal/okno dialogowe: kontener modala → Center w obu osiach; overlay → Left & Right oraz Top & Bottom.
  • Obraz jako tło sekcji: jeśli ma wypełniać obszar → constraints na Stretch; jeśli ma zachować kompozycję → rozważ Center i kontrolę dopasowania w samym obrazie (bez agresywnego skalowania całej warstwy).

Najczęstsze pułapki powodujące „pływanie”

  • Nie ten rodzic: element jest zagnieżdżony w dodatkowym frame’ie/grupie i „trzyma się” jej krawędzi, a nie layoutu, który faktycznie się skaluje. Efekt: przesunięcia mimo poprawnych pozornie ustawień.
  • Grupy zamiast frame’ów: grupy nie dają tak przewidywalnej kontroli jak frame’y; łatwo o sytuację, w której constraints nie działają tak, jak oczekujesz.
  • Stretch na elementach, które nie powinny się rozciągać: np. przycisk ustawiony na Left & Right w kontenerze — zaczyna „puchnąć”, psując rytm i hierarchię.
  • Scale użyte jako „responsywność”: skaluje wszystko (w tym typografię i odstępy), co często daje nienaturalne proporcje i wrażenie pływania przy zmianie rozmiaru.
  • Brak spójnych offsetów: dwa elementy wizualnie wyrównane, ale z innymi wartościami X/Y względem rodzica — przy resize różnice zaczynają być widoczne.
  • Tekst bez kontroli zachowania: gdy ramka tekstowa ma złe ustawienia (np. nie trzyma odpowiedniej krawędzi), przy zmianie szerokości rodzica może zmieniać łamanie linii w nieprzewidywalny sposób.

Krótka checklista przed resize frame’a

  • Czy każdy element ma świadomie ustawione constraints w obu osiach (a nie „domyślne, bo działało”)?
  • Czy element jest we właściwym frame’ie nadrzędnym, który faktycznie zmienia rozmiar?
  • Czy elementy, które mają trzymać margines, są na Left/Right/Top/Bottom, a nie na Scale?
  • Czy rozciągasz tylko te warstwy, które mogą rosnąć (tła, kontenery), a nie te, które powinny zachować rozmiar (ikony, przyciski)?

Constraints są najszybszym sposobem, by ustabilizować pozycjonowanie przy zmianie rozmiaru frame’a, ale mają ograniczenie: nie zarządzają relacjami pomiędzy elementami. Jeśli układ ma się „układać” dynamicznie (np. dopasowywać paddingi, odstępy i szerokości treści), same constraints zwykle nie wystarczą.

💡 Pro tip: Ustaw constraints dopiero po upewnieniu się, że warstwa ma właściwego rodzica (frame, nie grupa), bo nawet „idealne” przywiązania będą pływać, jeśli odnoszą się do złego kontenera. Rozciągaj tylko tła i kontenery (Stretch), a elementy interaktywne trzymaj na Left/Right/Center — unikniesz „puchnięcia” i przypadkowego skalowania typografii.

4. Auto Layout w praktyce: budowanie elastycznych komponentów, padding, spacing, wrap i alignment

Auto Layout w Figma służy do budowania elastycznych komponentów i sekcji UI, które same „układają się” na podstawie reguł: kierunku, odstępów, wypełnień i wyrównania. To narzędzie szczególnie przydatne tam, gdzie elementy mają zmienną treść (np. różne długości tekstów, stany przycisków, listy, karty), a układ ma pozostać stabilny bez ręcznego przesuwania warstw.

Doświadczenie Cognity pokazuje, że rozwiązanie tego problemu przynosi szybkie i zauważalne efekty w codziennej pracy — szczególnie wtedy, gdy projektant przestaje „łatać” layout ręcznymi przesunięciami, a zaczyna opierać go na spójnych regułach Auto Layout.

Kiedy Auto Layout daje największą wartość

  • Komponenty z treścią o zmiennej długości: przyciski, chipy, tagi, badge, pola z etykietą i komunikatem błędu.
  • Powtarzalne struktury: listy, tabele (na poziomie wierszy/komórek), sekcje kart, sidebar z pozycjami menu.
  • Układy z jasnymi regułami spacingu: pionowe „stacki” treści, nagłówek + opis + akcje, siatki kart (z wrappingiem).
  • Warianty stanów: gdy w jednym komponencie mogą pojawić się/znikać elementy (np. ikona, licznik, loader), a reszta ma się dopasować.

Auto Layout vs. ręczne pozycjonowanie (szybkie porównanie)

Cecha Auto Layout Ręczne układanie warstw
Zmiana tekstu/treści Układ dopasowuje się automatycznie Często wymaga ręcznych korekt
Spójne odstępy Jedna reguła spacingu dla całej grupy Łatwo o różnice „o 1–2 px”
Reużywalność komponentu Wysoka – przewidywalne zachowanie Niższa – układ zależy od ręcznych przesunięć
Kontrola „co gdzie stoi” Reguły i hierarchia determinują układ Pozycje absolutne (łatwe w szybkim mocku)

Kluczowe pojęcia: kierunek, padding i spacing

Auto Layout działa na kontenerze (frame) i układa jego dzieci zgodnie z ustawieniami:

  • Direction (kierunek): poziomy (horizontal) lub pionowy (vertical). To fundament budowy „stacków”.
  • Padding: wewnętrzne marginesy kontenera (top/right/bottom/left), które trzymają treść „od ścianek”.
  • Spacing between items: odstęp pomiędzy elementami wewnątrz kontenera; zapewnia powtarzalność i eliminuje ręczne „rozpychanie”.

Praktyczna zasada: padding definiuje relację treści do kontenera, a spacing definiuje relację elementów względem siebie. Mieszanie tych ról (np. dopinanie odstępów pustymi prostokątami) zwykle kończy się „pływaniem” przy zmianach.

Resize: Hug, Fill, Fixed — jak myśleć o rozmiarach

W Auto Layout kluczowe jest ustawienie zachowania rozmiaru kontenera i jego dzieci. W praktyce najczęściej operujesz trzema trybami:

  • Hug contents: element „obejmuje” zawartość (np. przycisk dopasowuje szerokość do tekstu).
  • Fill container: element wypełnia dostępne miejsce w kontenerze (np. input w wierszu formularza).
  • Fixed: stały rozmiar, niezależny od treści (np. ikona 24×24, avatar 40×40).

Dobrą praktyką jest: tekst i małe „opakowania” często ustawiaj jako Hug, główne pola/sekcje jako Fill, a elementy o stałym wymiarze jako Fixed. Dzięki temu komponent zachowuje proporcje bez ręcznych poprawek.

Alignment: wyrównanie i dystrybucja

Wyrównanie w Auto Layout dotyczy osi głównej (kierunku układania) i osi poprzecznej:

  • Align (oś poprzeczna): np. w poziomym layoucie wyrównujesz elementy do góry/środka/dołu.
  • Justify / distribution (oś główna): steruje tym, czy elementy idą „jeden po drugim” ze spacingiem, czy są rozciągane/rozsuwane (np. space-between).

Najczęstszy, stabilny wzorzec: stały spacing + wyrównanie do środka (dla wierszy) oraz stały spacing + wyrównanie do lewej (dla kolumn). Ustawienia „rozsuwające” (space-between) stosuj świadomie, bo zmiana szerokości kontenera może mocno zmieniać odległości.

Wrap: kiedy treść ma się zawijać

Wrap (zawijanie) pozwala układać elementy w wielu wierszach/kolumnach w ramach jednego Auto Layoutu. To przydatne dla:

  • Chipów i tagów (lista filtrów, etykiety, kategorie), które przechodzą do kolejnej linii.
  • Siatek kart o stałej szerokości kafla, które „łamią” się zależnie od dostępnej przestrzeni.
  • Zestawów akcji (przyciski), gdy nie mieści się wszystko w jednym rzędzie.

Wrap działa najlepiej, gdy elementy mają przewidywalną szerokość (np. Fixed lub ograniczony Hug) i gdy spacing jest ustalony. W przeciwnym razie możesz uzyskać losowe przejścia do kolejnej linii.

Przykłady komponentów, które warto budować na Auto Layout

  • Button: ikona (Fixed) + label (Hug) w kontenerze z paddingiem i stałym spacingiem.
  • Input: label nad polem (vertical), komunikat walidacji pod spodem; pole jako Fill w dostępnej szerokości.
  • Card: nagłówek, treść, stopka z akcjami; stopka może mieć układ poziomy i wyrównanie do prawej.
  • List item: lewa część (ikona/avatar + teksty) jako Fill, prawa (np. chevron, akcja) jako Fixed.

Minimalny „przepis” na stabilny komponent

// logika ustawień (bez zależności od konkretnego projektu)
Kontener (Auto Layout):
- Direction: Horizontal lub Vertical
- Padding: stały (np. 12/16)
- Spacing between items: stały (np. 8)
- Alignment: konsekwentny (center dla wierszy / left dla kolumn)

Dzieci:
- Ikony/avatary: Fixed
- Teksty: Hug (z sensownymi ograniczeniami szerokości, jeśli potrzeba)
- Główne pola: Fill container
- Elementy opcjonalne: ukrywanie/pokazywanie bez zmiany „ręcznych” pozycji

Typowe błędy, które psują elastyczność (i jak ich unikać)

  • Ręczne „spacery” (puste prostokąty) zamiast spacingu/paddingu — trudno to utrzymać przy zmianach.
  • Zbyt wiele zagnieżdżeń bez potrzeby — rośnie złożoność i łatwiej o sprzeczne reguły.
  • Wszystko na Fixed — komponent wygląda dobrze w jednym rozmiarze, ale nie skaluje się wraz z treścią.
  • Space-between jako domyślne — odstępy zmieniają się przy każdym resize, co bywa niepożądane w UI.

Jeśli trzymasz się prostych reguł (stały padding, stały spacing, świadome Hug/Fill/Fixed), Auto Layout staje się podstawą stabilnych, reużywalnych komponentów, które nie wymagają ciągłych ręcznych poprawek.

💡 Pro tip: Traktuj Auto Layout jak źródło prawdy dla odstępów: padding jest od kontenera, spacing jest między dziećmi — nie zastępuj ich pustymi prostokątami. Najstabilniejszy zestaw to ikony/avatary na Fixed, teksty na Hug, a główne pola na Fill, dzięki czemu komponent znosi zmiany treści bez ręcznych poprawek.

5. Responsywność i breakpointy w Figma: jak projektować warianty i testować skalowanie układu

Responsywność w Figma sprowadza się do świadomego projektowania kilku stanów tego samego interfejsu (dla różnych szerokości) oraz weryfikacji, czy układ zachowuje logikę podczas rozciągania i zwężania. Breakpointy nie są „magicznym” ustawieniem w jednym miejscu — to zestaw decyzji: jakie szerokości projektujesz, co dzieje się z siatką, oraz jak elementy mają się przeorganizować.

Breakpointy: po co są i jak je dobierać

Breakpoint to próg szerokości, przy którym zmienia się układ (np. liczba kolumn, układ nawigacji, widoczność paneli). W praktyce projektowej w Figma breakpointy pomagają:

  • utrzymać spójność decyzji layoutowych między ekranami,
  • uniknąć „pływania” (przypadkowych przesunięć i skoków),
  • planować, które elementy są priorytetowe na mniejszych szerokościach.

Dobieraj breakpointy na podstawie zachowania treści (kiedy layout zaczyna się łamać), a nie wyłącznie na podstawie listy urządzeń. Jeśli układ nie wymaga zmiany przy danym progu, nie twórz sztucznego wariantu.

Strategie projektowania wariantów responsywnych

Najczęściej spotkasz trzy podejścia. Różnią się nakładem pracy i tym, jak dobrze „symulują” implementację.

Strategia Kiedy używać Plusy Ryzyka
Fixed artboards (oddzielne ramki na breakpointy) Gdy chcesz jasnych makiet dla dev/QA Najczytelniejsze handoff, łatwe porównanie stanów Dużo duplikacji, łatwo o niespójności między wersjami
Fluid testing (testowanie przez zmianę rozmiaru tej samej ramki) Gdy layout ma się płynnie skalować między progami Szybko wykrywa problemy z rozciąganiem Może ukryć potrzebę „prawdziwego” przełamania układu
Hybrid (kilka breakpointów + test pośrednich szerokości) Najczęstszy scenariusz produktowy Równowaga między kontrolą a realizmem Wymaga dyscypliny w aktualizowaniu wariantów

Jak projektować warianty: co zmienia się najczęściej

Warianty breakpointów zwykle obejmują kilka typowych decyzji układowych (bez wchodzenia w szczegóły mechanik):

  • Siatka i szerokość contentu: zmiana liczby kolumn, szerokości kontenera, marginesów.
  • Nawigacja: pełne menu → zwinięte / off-canvas; pasek boczny → ikony / ukrycie.
  • Hierarchia treści: przesunięcie elementów o wysokim priorytecie wyżej, redukcja elementów drugorzędnych.
  • Układ kart/sekcji: 3 kolumny → 2 → 1; przejście z układu poziomego na pionowy.
  • Tabele i dashboardy: „gęste” widoki wymagają planu na zwężanie (np. priorytety kolumn, przewijanie, sekcje).

Kluczowe jest, aby przy każdym breakpointcie odpowiedzieć na pytanie: co ma pozostać stabilne (np. szerokość kontenera, rytm odstępów), a co ma się przeorganizować (np. liczba kolumn, kolejność bloków).

Testowanie skalowania układu w Figma (praktyczny workflow)

Żeby ocenić responsywność, nie wystarczy narysować dwóch ekranów. Potrzebujesz krótkiego testu „pośrednich” szerokości, bo tam najczęściej ujawniają się problemy.

  • Ustal zestaw szerokości testowych: dla każdego breakpointu dodaj 1–2 wartości pomiędzy (np. „tuż przed przełamaniem”).
  • Rozciągaj ramkę i obserwuj zachowanie kluczowych bloków: nagłówków, nawigacji, gridów z kartami, sekcji z CTA.
  • Sprawdzaj długości treści: podmień tekst na dłuższy/krótszy, aby zobaczyć, czy układ jest odporny na realne dane.
  • Weryfikuj interakcje w prototypie (jeśli używasz): czy przejścia między wariantami nie powodują skoków i utraty kontekstu.

Warianty i organizacja pliku: czytelność dla zespołu

Responsywne projekty szybko rosną, więc liczy się porządek. Dobra praktyka to utrzymywanie pary (lub zestawu) ekranów dla tego samego widoku w układzie obok siebie oraz konsekwentne nazewnictwo.

  • Nazwy ramek: dodawaj sufiks z breakpointem (np. „Home / md”, „Home / lg”).
  • Stałe punkty odniesienia: trzymaj powtarzalne elementy (np. header) w tej samej osi, aby łatwo porównać różnice.
  • Komunikacja zmian: jeśli coś „zmienia tryb” (np. sidebar przechodzi w drawer), pokaż to jako osobny wariant layoutu, a nie drobną korektę przypadkowych przesunięć.

Mini-checklista: czy Twój breakpoint ma sens?

  • Czy istnieje powód treściowy (a nie tylko „bo jest taki rozmiar urządzenia”)?
  • Czy po zmianie szerokości wiadomo, co jest priorytetem i co może zniknąć/zmienić pozycję?
  • Czy pośrednie szerokości nie powodują nagłych skoków i utraty wyrównania?
  • Czy różnice między wariantami są intencjonalne i opisane (np. w notatce lub nazwie wariantu)?

6. Przykładowe konfiguracje siatek i parametrów: web (desktop), mobile (iOS/Android), dashboardy (data-heavy)

Poniższe ustawienia traktuj jako sprawdzone punkty startowe do pracy w Figma. Najważniejsza różnica między web/mobile/dashboard to: liczba kolumn, szerokość marginesów, gutter (odstęp między kolumnami) oraz to, czy projektujesz pod stały kontener czy pod płynną szerokość. Warto też od początku dopasować siatkę do realnych ograniczeń: treści, tabel, kart, formularzy i nawigacji.

Konfiguracje startowe (tabela)

Typ projektu Frame (roboczy) Layout grid Marginesy Gutter Kiedy działa najlepiej
Web (desktop) 1440 px (często) Columns: 12, Type: Stretch 64–80 px 16–24 px Landing pages, marketing, standardowe UI z sekcjami i kartami
Web (desktop) – kontener 1440 px (frame), treść w kontenerze Columns: 12, Type: Center (Fixed width) kontener: 1120–1200 px 24 px Gdy chcesz przewidywalną szerokość treści i mniejsze ryzyko rozjazdów
Mobile (iOS/Android) 390×844 (iOS) lub 360×800 (Android – orientacyjnie) Columns: 4, Type: Stretch 16–20 px 16 px Aplikacje z kartami, listami, prostymi układami; łatwe skalowanie
Mobile – gęstsze UI jw. Columns: 6, Type: Stretch 16 px 12–16 px Gdy potrzebujesz bardziej precyzyjnego dzielenia szerokości (np. filtry, chipy)
Dashboard (data-heavy) 1440–1920 px Columns: 12 lub 16, Type: Stretch 24–48 px 16–24 px Tabele, wykresy, panele; układy o wielu kolumnach i modułach

Web (desktop): 12 kolumn i decyzja „stretch vs center”

  • 12 kolumn to najczęstszy wybór, bo daje elastyczność (2/3/4/6/12) i łatwe dzielenie sekcji.
  • Stretch (kolumny rozciągają się wraz z frame) jest wygodny, gdy projekt ma być płynny, ale wymaga dyscypliny w marginesach i kontenerach.
  • Center (stała szerokość siatki wyśrodkowana) bywa lepszy, gdy chcesz trzymać się jednego kontenera treści (np. 1140–1200 px) i ograniczyć „pływanie” na szerokich ekranach.

Praktyczny starter (desktop 1440): 12 kolumn, gutter 24, marginesy 80. Jeśli projektujesz pod kontener: ustaw grid na Center z fixed width np. 1200 i dopasuj marginesy frame do wygodnego podglądu.

Mobile (iOS/Android): 4 kolumny i mniejsze marginesy

  • 4 kolumny to popularny standard, który dobrze wspiera typowe układy: pełna szerokość, pół na pół (2+2), lub 3+1 pod akcje.
  • Marginesy 16–20 pomagają utrzymać czytelność i zgodność z większością wzorców mobilnych.
  • Gutter 16 jest bezpiecznym wyborem dla kart, list i prostych siatek; przy gęstszym UI rozważ 12.

Uwaga projektowa: na mobile częściej „siatką” staje się przewidywalna szerokość treści i konsekwentne marginesy niż rozbudowany podział na wiele kolumn.

Dashboardy (data-heavy): więcej modułów, większa tolerancja na gęstość

  • Najczęściej sprawdzają się 12 lub 16 kolumn — 16 daje drobniejszą modularyzację (np. 3/5/8/11) przy wielu panelach.
  • Mniejsze marginesy niż w marketingu (np. 24–48) pozwalają efektywniej wykorzystać przestrzeń pod dane.
  • Gutter 16–24: 16 dla gęstych siatek i wielu paneli, 24 gdy dashboard ma „oddychać” i ma mniej modułów, ale większe.

Dodatkowa praktyka: dla dashboardów często wygodniej jest zestawić dwie siatki w jednym frame: kolumnową (pod moduły) oraz subtelny grid wierszy (pod rytm pionowy). Jeśli używasz row grid, trzymaj go na niskiej widoczności, żeby nie „dominował” projektu.

Przykładowe ustawienia do przepisania w Figma

Poniżej zapis „parametrów”, które możesz szybko odwzorować w panelu Layout grid dla frame:

WEB (Desktop 1440)
- Columns: 12
- Type: Stretch
- Margin: 80
- Gutter: 24

MOBILE (iOS 390)
- Columns: 4
- Type: Stretch
- Margin: 16
- Gutter: 16

DASHBOARD (Desktop 1440–1920)
- Columns: 16 (lub 12)
- Type: Stretch
- Margin: 32
- Gutter: 16–24

Jak dobrać konfigurację (szybkie kryteria)

  • Jeśli dominują sekcje i hero (marketing) — większe marginesy i 12 kolumn.
  • Jeśli dominują listy i formularze (aplikacja web) — 12 kolumn, ale rozważ kontener Center dla przewidywalności.
  • Jeśli dominują tabele, filtry, panele (dashboard) — 12/16 kolumn, mniejsze marginesy i przemyślany gutter pod gęstość.
  • Jeśli projekt ma częste układy 2-up na mobile — 4 kolumny zwykle wystarczą; 6 kolumn wybieraj, gdy realnie potrzebujesz bardziej drobnego podziału.

7. Najczęstsze przyczyny „pływania” elementów i jak je naprawić (checklista diagnostyczna)

„Pływanie” elementów w Figma najczęściej wynika z niespójnych reguł pozycjonowania: część obiektów jest ustawiona ręcznie „na oko”, część opiera się o siatkę, a część zachowuje się inaczej przy zmianie rozmiaru ramki. Poniższa checklista pomaga szybko namierzyć źródło problemu i ujednolicić zachowanie układu.

  • Brak jednej „prawdy” dla układu (siatka vs ręczne wyrównania)

    Objawy: elementy nie trzymają osi, odstępy „prawie” się zgadzają, ale przy porównaniu ekranów widać drobne przesunięcia.

    Naprawa: wybierz wiodący sposób prowadzenia układu dla danej ramki (np. layout grid i stałe marginesy) i dociągnij kluczowe elementy do tych samych linii odniesienia (krawędzie, kolumny, osie).

  • Niespójne marginesy i gutter w obrębie projektu

    Objawy: sekcje wyglądają poprawnie osobno, ale „nie składają się” w całość; pojawiają się różne odległości od krawędzi w podobnych modułach.

    Naprawa: ujednolić marginesy zewnętrzne i przerwy między kolumnami dla ekranów tego samego typu; sprawdzać powtarzalne bloki (hero, listy, karty) pod kątem identycznych wartości.

  • Elementy umieszczone poza strukturą (dzieci nie w tym kontenerze)

    Objawy: przy przesuwaniu sekcji część elementów „zostaje w tyle” lub nie skaluje się razem z modułem.

    Naprawa: zweryfikuj hierarchię warstw; elementy wizualnie należące do modułu powinny być zagnieżdżone w jego ramce/grupie, a nie „luzem” na poziomie ekranu.

  • Grupy zamiast ramek tam, gdzie liczy się layout

    Objawy: trudne utrzymanie paddingu, brak przewidywalnego zachowania przy zmianie rozmiaru, kłopotliwe wyrównania.

    Naprawa: zamieniaj grupy na ramki w miejscach, gdzie potrzebujesz stabilnych granic kontenera (padding, tło, wyrównania do krawędzi). Grupy traktuj jako narzędzie pomocnicze, nie fundament układu.

  • Nieprawidłowe Constraints w ramkach responsywnych

    Objawy: po zmianie szerokości/wysokości ramki elementy odklejają się od krawędzi, zmieniają pozycję niezgodnie z oczekiwaniem albo „uciekają” poza ekran.

    Naprawa: sprawdź, czy każdy element ma sensownie ustawione przywiązanie (do lewej/prawej/środka, góry/dołu) oraz czy elementy, które powinny się rozciągać, faktycznie mają włączone rozciąganie w odpowiednim kierunku.

  • Mieszanie trybów: część elementów w Auto Layout, część pozycjonowana absolutnie

    Objawy: w obrębie jednego komponentu odstępy „rozjeżdżają się” po zmianie treści; ikony lub badge nie trzymają miejsca; układ wygląda inaczej w wariantach.

    Naprawa: zdecyduj, co ma być układane automatycznie, a co ma być pozycjonowane niezależnie. Jeśli element jest częścią przepływu (np. tekst + ikona), powinien być w tym samym układzie; absolutne pozycjonowanie zostaw dla wyjątków (np. nakładki, dekoracje).

  • „Hug/Fill/Fixed” ustawione przypadkowo

    Objawy: tekstowe bloki raz się zawijają, raz rozciągają; przy dłuższych labelach przyciski zmieniają szerokość w niekontrolowany sposób; karty nie trzymają równej wysokości.

    Naprawa: ujednolić sposób wymiarowania: elementy treściowe zwykle powinny dopasowywać się do zawartości, a elementy strukturalne (kolumny, kontenery) wypełniać dostępne miejsce lub mieć stały wymiar, jeśli tego wymaga projekt.

  • Różne style odstępów (brak konsekwentnej skali spacing)

    Objawy: podobne przerwy mają wartości typu 13, 15, 18; wizualnie „prawie” jest ok, ale całość wygląda mniej równo i trudniej to utrzymać w kolejnych ekranach.

    Naprawa: ogranicz liczbę używanych wartości odstępów i trzymaj się jednej skali w obrębie projektu; poprawki wprowadzaj „od źródła” (na poziomie komponentów), a nie ręcznie na instancjach.

  • Wyrównywanie do pikseli „na siłę” (pixel-perfect bez reguł)

    Objawy: elementy są przesuwane o 1 px tu i tam, żeby „lepiej wyglądało”, ale potem trudno utrzymać konsekwencję między ekranami i wariantami.

    Naprawa: jeśli korygujesz wizualnie, rób to konsekwentnie w ramach jednego systemu (np. zawsze ten sam offset dla danej klasy elementów) i tylko wtedy, gdy nie psujesz osi i wspólnych linii układu.

  • Niestabilne komponenty (nadpisania w instancjach zamiast poprawy w masterze)

    Objawy: każda instancja komponentu jest „trochę inna”; po zmianie mastera część ekranów wymaga ręcznych poprawek.

    Naprawa: napraw problem u źródła: popraw strukturę komponentu bazowego (padding, wyrównania, zachowanie tekstu) i ogranicz ręczne nadpisania w instancjach do minimum.

  • Ukryte elementy i warstwy wpływające na wyrównania

    Objawy: zaznaczenie kontenera pokazuje „dziwne” wymiary; wyrównanie do krawędzi daje niespodziewany odstęp; tło ma większy rozmiar niż widoczny content.

    Naprawa: sprawdź, czy w kontenerze nie ma niewidocznych obiektów, warstw z zerową przezroczystością, obrysów, efektów cienia lub elementów poza obszarem widocznym, które zaburzają bounding box.

  • Brak wspólnych punktów odniesienia między sekcjami

    Objawy: sekcje są poprawne lokalnie, ale na długiej stronie widać „złamania” rytmu: inne początki linii tekstu, inne osie kart, inne szerokości modułów.

    Naprawa: zdefiniuj kilka stałych osi, do których „łapiesz” większość elementów (np. lewa krawędź treści, oś kolumn, stała szerokość kontenera) i konsekwentnie je stosuj na wszystkich ekranach tego typu.

Szybki przebieg diagnostyki: zacznij od hierarchii i kontenerów (czy wszystko jest „w środku”), potem sprawdź reguły zachowania przy zmianie rozmiaru (przywiązania i rozciąganie), a na końcu ujednolić wartości odstępów i osie wyrównań. To zwykle usuwa 80% przypadków „pływania” bez przebudowy całego projektu.

💡 Pro tip: Diagnozę „pływania” zaczynaj od hierarchii (czy wszystko jest w odpowiednim kontenerze i czy to frame, nie grupa), potem sprawdź constraints/resize (Hug–Fill–Fixed), a dopiero na końcu poleruj wyrównania i spacing. Jeśli widzisz wartości odstępów typu 13/15/18 lub dużo override’ów na instancjach, napraw to w masterze i ujednolić skalę spacingu — zwykle znika większość problemów.

8. Checklist końcowy: spójność danych i czytelność (etykiety, skale, kontrast, dostępność)

Ostatni krok przed przekazaniem projektu to szybki przegląd, czy układ nie tylko „trzyma się siatki”, ale też jest zrozumiały, przewidywalny i dostępny. Poniższa checklista pomaga wychwycić najczęstsze problemy z prezentacją danych, hierarchią informacji i czytelnością.

  • Hierarchia informacji jest jednoznaczna: najważniejsze elementy (nagłówki, KPI, CTA, kluczowe filtry) mają wyraźny priorytet wizualny, a elementy pomocnicze nie konkurują z nimi.
  • Etykiety są konsekwentne: nazwy pól, przycisków i filtrów używają tego samego słownictwa, formy (np. tryb rozkazujący w CTA) oraz tej samej kapitalizacji.
  • Jednostki i formaty danych są spójne: waluty, procenty, skróty, daty i godziny mają jeden standard zapisu w całym interfejsie (również w tooltipach, legendach i eksportach).
  • Skale i osie w wizualizacjach nie wprowadzają w błąd: zakresy są czytelne, punkty odniesienia (0, min/max) są jasno zakomunikowane, a porównania między kartami/metrami nie mieszają różnych skal bez wyraźnej informacji.
  • Kolor nie jest jedynym nośnikiem znaczenia: stany (błąd/sukces/ostrzeżenie), serie na wykresach i statusy mają dodatkowe wsparcie w postaci ikon, wzorów, etykiet lub tekstu.
  • Kontrast jest wystarczający: tekst, ikony i kluczowe linie (np. na wykresach) nie „znikają” na tle; elementy drugorzędne są nadal czytelne, tylko mniej dominujące.
  • Rozmiary i waga typografii są konsekwentne: te same role (np. nagłówek sekcji, podpis, etykieta pola) mają identyczne parametry w całym projekcie, bez przypadkowych odchyleń.
  • Gęstość informacji jest kontrolowana: dashboardy nie są przeładowane, a w web/mobile kluczowe treści nie giną przez nadmiar detali; tam gdzie trzeba, stosowane są skróty z możliwością rozwinięcia.
  • Stany komponentów są kompletne: widoki pustego stanu, ładowania, błędu, braku uprawnień oraz stanów interakcji (hover/focus/disabled) są przewidziane i opisane.
  • Teksty są zrozumiałe i „scannable”: mikrocopy jest konkretne, unika żargonu, a dłuższe treści są podzielone na krótkie fragmenty (nagłówki, listy, wyróżnienia).
  • Interakcje są przewidywalne: elementy klikalne wyglądają jak klikalne, a nieklikalne nie udają akcji; miejsca kliknięcia są wystarczająco duże, zwłaszcza na mobile.
  • Focus i nawigacja klawiaturą są przemyślane: kolejność przechodzenia jest logiczna, a stan focus jest widoczny i nie ginie na tle.
  • Dostępność jest uwzględniona w treści: ikony mają sens bez koloru, komunikaty błędów mówią co i jak poprawić, a treści wrażliwe (np. ostrzeżenia) nie opierają się wyłącznie na subtelnych różnicach.
  • Przypadki brzegowe danych są sprawdzone: bardzo długie nazwy, duże liczby, brak danych, wartości ujemne, wartości skrajne oraz lokalizacje językowe nie psują czytelności i nie łamią układu.
  • Legenda i etykiety wykresów są jednoznaczne: użytkownik rozumie, co oznacza każda seria, kolor i metryka; skróty są rozwinięte w razie potrzeby.
  • Ikony są spójne stylistycznie: ta sama grubość linii, zaokrąglenia i sposób użycia (z tekstem lub bez), bez mieszania różnych zestawów.
  • Warstwy i nazewnictwo ułatwiają współpracę: kluczowe grupy, sekcje i komponenty są nazwane w sposób opisowy, co zmniejsza ryzyko błędów przy dalszych iteracjach.

Jeśli większość punktów przechodzi bez wahań, projekt jest zwykle gotowy do handoffu: dane są przedstawione konsekwentnie, a interfejs pozostaje czytelny w typowych i nietypowych scenariuszach.

Jeśli chcesz poznać więcej takich przykładów, zapraszamy na szkolenia Cognity, gdzie rozwijamy ten temat w praktyce.

Majczęściej zadawane pytania i odpowiedzi odnośnie Siatki i układy w Figma: jak ustawić grid pod web, mobile i dashboard bez „pływania” elementów

Jak ustawić pierwszy sensowny grid w Figma dla projektu webowego?

Najlepszy start to prosty grid 12-kolumnowy z ustalonym marginesem i gutterem. W praktyce taki układ daje wygodny podział sekcji, kart i formularzy bez wyrównywania „na oko”. Jeśli zależy Ci na większej kontroli szerokości treści, wybierz układ wyśrodkowany, a jeśli projekt ma być bardziej płynny na różnych szerokościach, użyj siatki rozciąganej.

Ile kolumn w Figma wybrać dla mobile, a ile dla dashboardu?

Dla mobile najczęściej sprawdza się 4-kolumnowy grid, a dla dashboardu 12 lub 16 kolumn. Taki podział wynika z różnicy w gęstości treści i liczbie modułów. Mobile potrzebuje prostszego układu i czytelnych marginesów, a dashboard wymaga większej elastyczności przy kartach, tabelach, filtrach i panelach danych.

Kiedy lepiej użyć w Figma gridu typu Stretch, a kiedy Center?

Stretch wybieraj, gdy układ ma płynnie reagować na zmianę szerokości, a Center wtedy, gdy chcesz trzymać stały obszar treści. To praktyczny wybór zależny od charakteru projektu:

  • Stretch dobrze działa w elastycznych layoutach i dashboardach.
  • Center ułatwia kontrolę czytelnej szerokości treści w webie.
  • Oba podejścia pomagają ograniczyć przypadkowe „pływanie” elementów.
Czy sam layout grid w Figma wystarczy, żeby elementy nie „pływały”?

Nie, sam grid nie wystarczy, jeśli elementy mają złe constraints albo chaotyczny spacing. Siatka porządkuje układ, ale nie steruje zachowaniem warstw przy zmianie rozmiaru frame’a. Stabilny efekt daje dopiero połączenie kilku zasad: spójnego gridu, jednej skali odstępów, poprawnych constraints oraz Auto Layout tam, gdzie treść zmienia długość.

Po czym poznać, że w projekcie brakuje spójnej skali odstępów?

Najczęstszym sygnałem są przypadkowe wartości spacingu i wrażenie, że podobne elementy nie trzymają jednego rytmu. Jeśli w pliku pojawiają się różne, trudne do uzasadnienia odstępy, układ zaczyna wyglądać na ręcznie „dopychany”. Dobra skala, oparta na powtarzalnych krokach, upraszcza decyzje projektowe i zmniejsza liczbę drobnych rozjazdów.

Kiedy w Figma lepiej użyć Auto Layout niż ręcznego układania warstw?

Auto Layout jest lepszy wszędzie tam, gdzie treść i układ mają się zmieniać bez ręcznego poprawiania pozycji. Szczególnie dobrze sprawdza się w komponentach i powtarzalnych strukturach, takich jak:

  • przyciski, inputy i badge z różną długością tekstu,
  • listy, karty i sekcje z ustalonym spacingiem,
  • warianty komponentów, w których elementy pojawiają się lub znikają.
Jak sprawdzić w Figma, czy layout dobrze zachowa się na różnych breakpointach?

Najlepiej testować nie tylko docelowe breakpointy, ale też szerokości pośrednie. Samo narysowanie dwóch wersji ekranu zwykle nie wystarcza, bo problemy pojawiają się między progami. Rozciągaj i zwężaj frame, obserwuj nagłówki, siatki kart, nawigację i długość tekstów. Dzięki temu szybciej zobaczysz, czy układ naprawdę się skaluje, czy tylko dobrze wygląda w wybranych rozmiarach.

Jakie są najczęstsze błędy w Figma, które powodują „pływanie” elementów?

Najczęściej winne są złe kontenery, niespójne constraints i mieszanie różnych zasad układu w jednym widoku. W praktyce warto najpierw sprawdzić podstawy:

  • czy element jest w odpowiednim frame’ie, a nie w przypadkowej grupie,
  • czy constraints odpowiadają roli warstwy,
  • czy spacing i marginesy są powtarzalne,
  • czy komponent nie opiera się na ręcznych przesunięciach zamiast Auto Layout.
icon

Formularz kontaktowyContact form

Imię *Name
NazwiskoSurname
Adres e-mail *E-mail address
Telefon *Phone number
UwagiComments