Block, inline i inline-block
Poznają Państwo różnice między zachowaniem wyświetlania block, inline i inline-block.
Block, inline i inline-block to bezpłatna lekcja CSS Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej CSS Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs CSS Academy zawiera 4 lekcji w sumie.
Właściwość display
Właściwość display jest jedną z najważniejszych właściwości CSS. Określa sposób uczestnictwa elementu w przepływie układu — decyduje, czy tworzy on pudełko blokowe, pudełko liniowe czy coś pośredniego.
Elementy blokowe
Elementy blokowe zaczynają się w nowym wierszu i rozciągają się na całą szerokość kontenera. Można ustawić ich width, height, margin i padding ze wszystkich stron.
Domyślne elementy blokowe: div, p, h1-h6, section, article.
<div>I'm a block element — full width, centered.</div>
Elementy liniowe
Elementy liniowe układają się wewnątrz tekstu. Nie zaczynają nowego wiersza. Ustawienie width lub height nie przynosi efektu. Górny i dolny margin są ignorowane, natomiast poziome marginy i padding działają.
Domyślne elementy liniowe: span, a, strong, em, img.
<p>This is <span>an inline span</span> inside a paragraph.</p>
Elementy inline-block
display: inline-block to rozwiązanie hybrydowe. Elementy układają się liniowo, bez wymuszonego łamania wiersza, ale obsługują width, height oraz wszystkie właściwości modelu pudełkowego, tak jak elementy blokowe.
<a class="btn" href="#">Click Me</a>
inline-block w nawigacji
Przed pojawieniem się Flexboxa wartość inline-block służyła do tworzenia poziomych pasków nawigacyjnych. Wadą tego rozwiązania są małe odstępy między elementami powstające przez białe znaki w kodzie źródłowym HTML.
<ul><li>Home</li><li>About</li><li>Contact</li></ul>
Usuwanie odstępu inline
Odstęp między elementami inline-block można usunąć, ustawiając font-size: 0 na elemencie nadrzędnym i przywracając tę wartość elementom potomnym albo usuwając białe znaki z kodu HTML.
<ul><li>One</li><li>Two</li><li>Three</li></ul>
Zastępowanie inline-block przez Flexbox
We współczesnym CSS preferowanym sposobem tworzenia poziomych układów bez problemów z białymi znakami jest ustawienie display: flex na elemencie nadrzędnym. inline-block nadal przydaje się do określania rozmiaru pojedynczych elementów.
Zmiana display
Typ display dowolnego elementu można zmienić za pomocą CSS. Często wykorzystuje się to do nadania linkom kształtu przycisków albo do ułożenia elementów listy w poziomie.
<a class="button" href="#">Button</a>
<ul><li>Item 1</li><li>Item 2</li></ul>
Wartości display dla tabel
CSS udostępnia wartości display: table, display: table-row, display: table-cell itd., aby zastosować układ tabeli do elementów, które nie są tabelami. Obecnie używa się ich rzadko, ale nadal mogą przydać się do wyśrodkowywania w pionie w starszych kontekstach.
Korzeń przepływu: display: flow-root
display: flow-root tworzy nowy kontekst formatowania blokowego bez efektów ubocznych właściwości overflow: hidden. Czyści floaty i zapobiega wydostawaniu się efektu łączenia marginów poza kontener.
<div class="clearfix">Contains floated children without collapsing.</div>
Anonimowe pudełka
Gdy elementy blokowe i liniowe występują jako rodzeństwo, przeglądarka umieszcza osieroconą treść liniową w anonimowych pudełkach blokowych. To niewidoczne działanie wyjaśnia jednak nieoczekiwane przesunięcia w układzie.
Szybkie sprawdzenie
Jaka wartość display umożliwia ustawienie width, a jednocześnie pozostawia element w przepływie liniowym?
Podsumowanie
Elementy blokowe zajmują całą szerokość i zaczynają się w nowym wierszu. Elementy liniowe układają się razem z tekstem i ignorują width/height. Inline-block łączy obie cechy: układa się liniowo, ale akceptuje width i height. We współczesnych układach zamiast siatek inline-block preferuje się Flexbox i Grid.
Ucz się CSS dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 40
- Lekcje
- 159
Często zadawane pytania
Czy lekcja „Block, inline i inline-block” jest bezpłatna?
Tak — pełny tekst „Block, inline i inline-block” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu CSS Academy, przejdź na CoddyKit PRO. Kurs CSS Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Block, inline i inline-block”?
Poznają Państwo różnice między zachowaniem wyświetlania block, inline i inline-block. Ćwiczysz CSS Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć CSS Academy?
Nie wymagamy żadnego doświadczenia. CSS Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Block, inline i inline-block”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji CSS Academy?
Tak. Każda lekcja CSS Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Block, inline i inline-block
- Visibility a display: none
- Overflow: scroll, clip i auto
- Resetowanie i normalizacja CSS