2024-05-21 22:06:42
  • Hello!
  • Whats ya doin?
  • ByeBye

[&]

3.129.249.141

Układ wyświetlania Grid Layout

workshop: #10-dsp-grid.html

Warsztat CSS: siatka wyświetlania

Przykłady użycia układu siatki do wyświetlania elementów.

Przygotowanie

  1. Utwórz dokument display-grid.html podzielony na trzy sekcje, a w każdej mają znajdować się elementy DIV w odpowiedniej ilości.
  2. Zapoznaj się z efektami końcowymi do osiągnięcia dla dokumentu HTML, przedstawionego na Listingach od 1 do 3
  3. Stosując nowo poznane reguły CSS trzech wariantów układu Grid ostyluj dokument HTML display-grid.html, tak by osiągnąć zgodność z podanymi wzorcami
  4. Dla każdego wariantu układu Grid (odpowiednio 1, 2 i 3) zastosuj dla selekorów CSS prefiksy, np. #g1 lub .g1
1 Grid wariant #1 - wirtualny (auto)

Przykład siatki elementów deklarując rozmiar siatki i rozmiar elementów. Zastosowanie:

  • Dynamiczna, zmienna liczba elementów
  • Nieznana lub bardzo duża liczba elementów
Układ grid - wirtualny lub auto

Poniższe reguły CSS należy zastosować do kontenera.

Reguły CSS (wersja A)

display: grid;
grid-template-columns: 30px 30px 30px 30px;
grid-template-rows: 32px 32px 32px;

Można zastosować automatyzację, w przypadku gdy kolumny są tej samej szerokości lub wiersze są tej samej wysokości. Należy użyć funkcji powtórz: repeat(ILE_RAZY,ROZMIAR)

Reguły CSS (wersja B)

display: grid;
grid-template-columns: repeat(4,30px);
grid-template-rows: repeat(3,32px);

BRAK reguł CSS dla elementów kontenera.

2 Grid wariant #2 - nazwy obszarów (area-names)

Przykład, gdzie elementy nakładane są na obszary siatki. Zastosowanie:

  • Mała lub stała liczba elementów
  • Stały układ wyświetlania z ustalonymi obszarami
  • Elementy mogą zmieniać miejsca w przyszłości
Układ grid - nazwy obszarów

Reguły CSS

Poniższe reguły CSS należy zastosować do kontenera wskazując jak będą nazywać się jego obszary:

display: grid;
grid-template-areas:
  "head head"
  "aside body"
  "foot foot"
;

Poniższe reguły CSS należy zastosować do konkretnego elementu znajdującego się w kontenerze wskazując jego przynależność do obszaru:

.top { grid-area: head; }
.side { grid-area: aside; }
.content { grid-area: body; }
.bottom { grid-area: foot; }
3 Grid wariant #3 - kolumny i wiersze (cols'n'rows)

Elementy układane są na podstawie krawędzi siatki. Zastosowanie:

  • Zasady jak w Grid#2
  • Zamiast nazwanych obszarów może istnieć potrzeba określania położenia elementów po kolumnach i wierszach
  • Możliwość nie-zapełniania całego obszaru, gdyby nawet był on nazwany - większa precyzja (widoczny czerwony fragment)
Układ Grid - kolumny - wiersze

Reguły CSS

Poniższe reguły CSS należy zastosować do kontenera:

display: grid;
background-color: red; /* do demonstracji przykładu */

Poniższe reguły CSS należy zastosować do konkretnego elementu znajdującego się w kontenerze.

Pamiętaj, że dla reguł grid-column i -row wartości liczymy po krawędziach (kolumn lub wierszy) wg. zapisu: POCZĄTEK / KONIEC

div { background-color: white; text-align: center; }
.top { grid-column: 1/4; grid-row: 1/2; }
.side { grid-column: 1/2; grid-row: 2/3; }
.content { grid-column: 2/3; grid-row: 2/3; }
.bottom { grid-column: 1/4; grid-row: 3/4; }
4 Podgląd układu Grid w narzędziach deweloperskich

Aby zobaczyć podgląd układu wyświetlania Grid (obszarów lub linii krawędziowych kolumn i wierszy) należy włączyć Narzędzia deweloperskie Przeglądarki internetowej.

  1. Włącz narzędzia deweloperskie przyciskiem F12 lub prawym przyciskiem myszy i wybierz Zbadaj

  2. Na zakładce Elementy/Inspektor wybierz węzeł z układem Grid

  3. Na zakładce Reguły lub Układ należy aktywować wyświetlanie podgladu Siatki dla wybranego węzła

  4. Najlepiej zaznaczyć (włączyć) ustawienia wyświetlania siatki, tj.: Numery wierszy oraz Nazwy obszarów

Narzędzia deweloperskie Przeglądarki internetowej - zakładka układu Grid Layout

Podsumowanie

  1. Czym różni się układ wyświetlania Grid Layout od Flex Box Layout? Jakie mają zastosowania, czy mogą się nawzajem zastępować?
  2. Jakie rodzaje wyświetlania układu Grid można wyróżnić i czym się one cechują?
  3. Co się stanie: jeżeli dla elementu nie wskażemy obszaru docelowego - gdzie trafi element? jeżeli dla kilku elementów wskarzemy ten sam obszar docelowy?