Generator CSS Grid

Zdefiniuj kolumny i wiersze, zaznacz obszary myszką, aby rozmieścić elementy, i jednym kliknięciem skopiuj kod CSS wraz z pasującym kodem HTML.

Szablony
Elementy
CSS
HTML
Przeciągnij kursor po siatce, aby umieścić element.

Siatka jest tworzona bezpośrednio w Państwa przeglądarce. Żadne parametry nie są przesyłane do BroBroGo.

FAQ

Jak umieszczać elementy na siatce?

Kliknij i przeciągnij kursor po komórkach siatki, aby zaznaczyć prostokątny obszar — po zwolnieniu przycisku myszy powstanie tam element podrzędny rozciągający się na wybrane kolumny i wiersze. Każdy narysowany element otrzymuje własne reguły grid-column i grid-row w CSS oraz odpowiadający mu znacznik div w HTML. Elementy mogą się nakładać (ten narysowany później znajdzie się na wierzchu); do usunięcia elementu służy ikona ×.

Czy kolumny i wiersze mogą mieć różne rozmiary?

Tak. Każda kolumna i wiersz mają własne pole tekstowe, w którym można wpisać dowolną poprawną wartość CSS Grid — np. 1fr, 200px, auto, min-content lub minmax(120px, 1fr). Ścieżki o tym samym rozmiarze są automatycznie grupowane w funkcję repeat(), aby kod pozostał zwięzły. Odstępy pionowe i poziome ustawia się osobno; jeśli są równe, zostaną uproszczone do jednej właściwości gap.

Co zrobić z wygenerowanym kodem?

Skopiuj wygenerowany kod CSS oraz HTML. Kod HTML zawiera kontener z osobnymi divami dla każdego elementu, a kod CSS definiuje siatkę i pozycjonuje te elementy. Wklejenie obu fragmentów do projektu odtworzy dokładnie taki sam układ, jaki został narysowany w kreatorze.

Projektowanie układów za pomocą Generatora CSS Grid

Generator CSS Grid to wizualne narzędzie przeznaczone do szybkiego prototypowania i generowania kodu dla dwuwymiarowych układów stron internetowych. Narzędzie eliminuje konieczność ręcznego pisania kodu pozycjonującego, umożliwiając interaktywne definiowanie struktury siatki oraz rozmieszczanie w niej elementów za pomocą myszy. Wynikiem pracy generatora jest gotowy, zoptymalizowany kod CSS i HTML, który można bezpośrednio wdrożyć w swoim projekcie.

Siatka CSS (CSS Grid Layout) opiera się na relacji między kontenerem (rodzicem) a umieszczonymi w nim elementami (dziećmi). Narzędzie pozwala na pełną kontrolę nad obydwoma tymi poziomami, ułatwiając wizualizację tego, jak różne rozmiary kolumn i wierszy wpływają na ostateczny układ przestrzenny.


Parametry wejściowe i konfiguracja siatki

Projektowanie układu rozpoczyna się od zdefiniowania struktury geometrycznej siatki w panelu konfiguracyjnym. Narzędzie obsługuje następujące parametry wejściowe:

  • Kolumny: Liczba całkowita w przedziale od 1 do 12.
  • Wiersze (Wiersze): Liczba całkowita w przedziale od 1 do 12.
  • Odstęp kolumn: Wartość określająca odstęp poziomy między kolumnami, przyjmująca wartości od 0 do 48px.
  • Odstęp wierszy (Odstęp wierszy): Wartość określająca odstęp pionowy między wierszami, przyjmująca wartości od 0 do 48px.
  • Rozmiary kolumn: Dowolna poprawna wartość jednostki miary CSS Grid przypisana do konkretnej kolumny.
  • Rozmiary wierszy: Dowolna poprawna wartość jednostki miary CSS Grid przypisana do konkretnego wiersza.

Każda kolumna i każdy wiersz posiadają własne, dedykowane pole tekstowe, w którym można ręcznie określić ich szerokość lub wysokość. Do pól tych można wprowadzać standardowe jednostki i funkcje CSS, takie jak:

  • 1fr (udział w wolnej przestrzeni),
  • 200px (stała szerokość w pikselach),
  • auto (automatyczne dopasowanie do zawartości),
  • min-content (minimalny rozmiar zawartości),
  • minmax(120px, 1fr) (zakres elastyczny z określoną wartością minimalną i maksymalną).

W przypadku wprowadzenia niepoprawnej składni (np. ciągu znaków not-a-grid-track), pole wejściowe zostanie oznaczone jako nieprawidłowe. Generator zabezpiecza jednak ciągłość pracy — w wygenerowanym kodzie CSS zachowana zostanie ostatnia poprawna wartość wprowadzona przed wystąpieniem błędu.


Interaktywne rozmieszczanie elementów i zasady generowania kodu

Po ustaleniu podziału siatki, rozmieszczanie elementów odbywa się bezpośrednio na obszarze roboczym.

Mechanizm rysowania i nakładania

Aby dodać element, należy kliknąć i przeciągnąć kursor myszy po komórkach siatki, zaznaczając pożądany prostokątny obszar. Z chwilą zwolnienia przycisku myszy tworzony jest element podrzędny, który rozciąga się na zaznaczone kolumny i wiersze. Każdy taki obszar otrzymuje w kodzie HTML odpowiadający mu znacznik div, a w kodzie CSS dedykowane reguły pozycjonujące grid-column oraz grid-row.

Narzędzie obsługuje maksymalnie 16 elementów. Projektant ma możliwość nakładania elementów na siebie — w sytuacji, gdy obszary się pokrywają, element narysowany później będzie pozycjonowany na wierzchu (nadpisując wizualnie elementy wcześniejsze). Każdy element posiada ikonę „×”, której kliknięcie powoduje jego natychmiastowe usunięcie z układu.

Optymalizacja kodu wyjściowego

Generator automatycznie dba o czystość i zwięzłość kodu produkcyjnego poprzez stosowanie reguł skróconych:

  1. Grupowanie ścieżek: Jeśli sąsiednie kolumny lub wiersze współdzielą tę samą definicję rozmiaru, narzędzie automatycznie zwija je w kodzie wyjściowym do funkcji repeat().
  2. Upraszczanie odstępów: Parametry "Odstęp kolumn" oraz "Odstęp wierszy" są definiowane niezależnie. Jeśli jednak obie te wartości są identyczne, generator połączy je w wyjściowym arkuszu stylów w jedną skróconą właściwość gap.

Gotowe szablony układów

Dla przyspieszenia pracy, generator oferuje zestaw predefiniowanych szablonów, które reprezentują najpopularniejsze schematy strukturalne stron internetowych:

Nazwa szablonu Opis struktury i zastosowanie
Panel boczny Klasyczny układ z wąską kolumną nawigacyjną po lewej lub prawej stronie oraz szerokim obszarem głównej zawartości.
Nagłówek i stopka Trójsekcyjny układ pionowy z pełnowymiarowym pasem górnym, sekcją środkową oraz pasem dolnym zamykającym stronę.
Galeria Symetryczna struktura składająca się domyślnie z 3 kolumn, 2 wierszy oraz 3 równomiernie rozmieszczonych elementów.
Kokpit (dashboard) Złożony układ przeznaczony dla paneli administracyjnych, łączący sekcje podsumowań, wykresów i bocznych menu sterujących.

Bezpieczeństwo danych i przetwarzanie lokalne

Wszystkie operacje związane z projektowaniem siatki, obliczaniem wymiarów oraz generowaniem kodu HTML i CSS są wykonywane bezpośrednio w przeglądarce użytkownika. Żadne parametry konfiguracyjne, wymiary ani struktury projektowanych układów nie są przesyłane do serwerów zewnętrznych. Przetwarzanie danych odbywa się w pełni lokalnie w środowisku uruchomieniowym przeglądarki.


Często zadawane pytania (FAQ)

Jak umieszczać elementy na siatce?
Kliknij i przeciągnij kursor po komórkach siatki, aby zaznaczyć prostokątny obszar — po zwolnieniu przycisku myszy powstanie tam element podrzędny rozciągający się na wybrane kolumny i wiersze. Każdy narysowany element otrzymuje własne reguły grid-column i grid-row w CSS oraz odpowiadający mu znacznik div w HTML. Elementy mogą się nakładać (ten narysowany później znajdzie się na wierzchu); do usunięcia elementu służy ikona ×.

Czy kolumny i wiersze mogą mieć różne rozmiary?
Tak. Każda kolumna i wiersz mają własne pole tekstowe, w którym można wpisać dowolną poprawną wartość CSS Grid — np. 1fr, 200px, auto, min-content lub minmax(120px, 1fr). Ścieżki o tym samym rozmiarze są automatycznie grupowane w funkcję repeat(), aby kod pozostał zwięzły. Odstępy pionowe i poziome ustawia się osobno; jeśli są równe, zostaną uproszczone do jednej właściwości gap.

Co zrobić z wygenerowanym kodem?
Skopiuj wygenerowany kod CSS oraz HTML. Kod HTML zawiera kontener z osobnymi divami dla każdego elementu, a kod CSS definiuje siatkę i pozycjonuje te elementy. Wklejenie obu fragmentów do projektu odtworzy dokładnie taki sam układ, jaki został narysowany w kreatorze.

Co się stanie po kliknięciu przycisku "Wyczyść elementy"?
Użycie tej opcji powoduje całkowite zresetowanie obszaru roboczego. Liczba umieszczonych elementów zostaje zredukowana do 0, a wyjściowy kontener HTML staje się pusty.

Jak dodać pojedynczy element bez przeciągania myszą?
Można skorzystać z przycisku "Dodaj element", który automatycznie wygeneruje nowy element w strukturze kodu HTML.