Narzędzia wysokości
Kontrolować wysokość za pomocą stałych wartości h-*, używać h-full do wypełnienia rodzica, h-screen dla wysokości obszaru widoku oraz h-auto dla naturalnego rozmiaru.
Narzędzia wysokości to bezpłatna lekcja Tailwind CSS Academy na CoddyKit. To lekcja 2 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 Tailwind CSS Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Tailwind CSS Academy zawiera 4 lekcji w sumie.
Rodzina narzędzi h-*
Narzędzia wysokości w Tailwind odzwierciedlają system szerokości. Prefiks h-* określa wysokość elementu, a wartości pochodzą z tej samej skali odstępów, rozmiarów ułamkowych i słów kluczowych o znaczeniu semantycznym, które znają Państwo już z w-*. W przeciwieństwie do szerokości wysokości zachowują się w CSS inaczej, ponieważ elementy blokowe są domyślnie zazwyczaj tak wysokie jak ich zawartość — dlatego narzędzia jawnie określające wysokość stosuje się bardziej wybiórczo.
<!-- Height examples -->
<div class="flex gap-4 items-end">
<div class="w-16 h-8 bg-blue-200 rounded">h-8</div>
<div class="w-16 h-16 bg-blue-300 rounded">h-16</div>
<div class="w-16 h-32 bg-blue-400 rounded">h-32</div>
<div class="w-16 h-48 bg-blue-500 rounded">h-48</div>
</div>Stałe wysokości ze skalą odstępów
Stałe wysokości korzystają z tej samej skali odstępów co szerokości — 4 px na jednostkę. h-4 oznacza 16 px, h-12 — 48 px, a h-96 — 384 px. Typowe zastosowania to wysokości przycisków (h-10 lub h-12), rozmiary awatarów (h-8 w-8) oraz linie rozdzielające (h-px dla linii o grubości 1 px). Połączenie h-* i w-* o tej samej wartości pozwala uzyskać idealne kwadraty.
<!-- Square avatar shapes using equal h and w -->
<div class="flex gap-4">
<div class="h-10 w-10 rounded-full bg-emerald-400 flex items-center justify-center text-white text-sm">SM</div>
<div class="h-14 w-14 rounded-full bg-emerald-500 flex items-center justify-center text-white">MD</div>
<div class="h-20 w-20 rounded-full bg-emerald-600 flex items-center justify-center text-white">LG</div>
</div>h-full — wypełnianie elementu nadrzędnego
h-full ustawia wysokość elementu na 100% wysokości elementu nadrzędnego. Aby to zadziałało, element nadrzędny musi mieć jawnie określoną wysokość. Jest to często używane w przypadku przyklejanych pasków bocznych, obrazów sekcji hero lub kart w wierszu flex, które mają rozciągać się do tej samej wysokości. Bez jawnie określonej wysokości elementu nadrzędnego h-full nie daje efektu, ponieważ wysokości procentowe wymagają elementu nadrzędnego o określonym rozmiarze.
<!-- Sidebar fills the full height of its container -->
<div class="flex h-64">
<aside class="w-48 h-full bg-gray-800 text-white p-4">
Sidebar (h-full)
</aside>
<main class="flex-1 bg-gray-50 p-4">
Main content (natural height)
</main>
</div>h-screen i h-dvh
h-screen ustawia wysokość na 100vh (100% wysokości obszaru widoku), co sprawdza się w przypadku pełnoekranowych sekcji hero i szkieletów aplikacji. W mobilnych przeglądarkach pasek adresu może powodować, że 100vh wyjdzie poza ekran. Nowoczesnym rozwiązaniem jest h-dvh (100dvh — dynamiczna wysokość obszaru widoku), obsługiwane przez Tailwind w wersji 3.4 i nowszych, które automatycznie uwzględnia zwijane elementy interfejsu przeglądarki.
<!-- Classic full-screen hero section -->
<section class="h-screen bg-gradient-to-br from-indigo-600 to-purple-700 flex items-center justify-center">
<div class="text-center text-white">
<h1 class="text-5xl font-bold mb-4">Welcome</h1>
<p class="text-xl opacity-80">A full-viewport hero section</p>
</div>
</section>h-auto — wysokość zależna od zawartości
h-auto przywraca elementowi naturalną wysokość zależną od zawartości, gdy wcześniej w mniejszym punkcie przerwania ustawiono wysokość stałą lub procentową. Na przykład h-48 md:h-auto nadaje karcie stałą wysokość na urządzeniach mobilnych (co dobrze sprawdza się w przypadku miniatur obrazów w siatce), ale na komputerach pozwala jej dopasować się naturalnie do zawartości, której długość może się zmieniać bez nieestetycznego efektu.
<!-- Fixed height on mobile, auto on desktop -->
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
<div class="h-40 md:h-auto bg-teal-100 p-4 rounded overflow-hidden">
This content is clipped on mobile but shows fully on desktop.
It may have variable amounts of text.
</div>
<div class="h-40 md:h-auto bg-teal-100 p-4 rounded overflow-hidden">Short text</div>
<div class="h-40 md:h-auto bg-teal-100 p-4 rounded overflow-hidden">Medium text here</div>
</div>h-px — cienkie linie rozdzielające
h-px ustawia wysokość dokładnie na 1 px, dzięki czemu idealnie nadaje się do poziomych separatorów i linii rozdzielających. W połączeniu z w-full bg-gray-200 tworzy przejrzysty separator pasujący do systemu projektowego, bez potrzeby definiowania niestandardowej klasy CSS. Można również użyć h-0.5, aby uzyskać linię o grubości 2 px, gdy 1 px wydaje się zbyt cienkie na ekranach o dużej gęstości pikseli.
<!-- Section dividers using h-px and h-0.5 -->
<div class="space-y-4">
<p class="text-gray-700">Content above the divider</p>
<div class="h-px w-full bg-gray-300"></div>
<p class="text-gray-700">Content below the divider</p>
<div class="h-0.5 w-full bg-gray-200"></div>
<p class="text-gray-700">More content</p>
</div>h-fit, h-min i h-max
Podobnie jak ich odpowiedniki dotyczące szerokości, h-fit dopasowuje rozmiar elementu do jego zawartości, h-min używa minimalnej wysokości zawartości, a h-max — jej maksymalnej wysokości. Są one potrzebne rzadziej niż odpowiedniki dotyczące szerokości, ponieważ wysokość zazwyczaj i tak zależy od zawartości. Najważniejsze zastosowanie pojawia się wtedy, gdy elementowi nadano stałą lub procentową wysokość i trzeba powrócić do rozmiaru zależnego od zawartości w określonym punkcie przerwania.
<!-- h-fit useful when resetting an explicitly set height -->
<div class="flex gap-4">
<!-- Card with a fixed minimum height on mobile -->
<div class="h-32 sm:h-fit bg-purple-100 p-4 rounded w-40">
<p>This card has fixed height on mobile</p>
<p class="hidden sm:block">And shows all this text on larger screens</p>
</div>
</div>Wysokości ułamkowe
Podobnie jak szerokości, wysokości mogą korzystać z wartości ułamkowych: h-1/2, h-1/3, h-2/3, h-1/4 i h-3/4. Są to wartości procentowe odnoszące się do wysokości kontenera nadrzędnego. Dobrze sprawdzają się w kontenerach o stałej wysokości, takich jak karta, panel lub sekcja szkieletu aplikacji, gdy elementy podrzędne mają zajmować określoną część dostępnej przestrzeni w pionie.
<!-- Image takes top half, content takes bottom half -->
<div class="h-64 bg-white rounded-lg shadow overflow-hidden">
<div class="h-1/2 bg-gradient-to-r from-blue-400 to-purple-500">
<!-- Image placeholder -->
</div>
<div class="h-1/2 p-4">
<h3 class="font-bold">Card Title</h3>
<p class="text-sm text-gray-600">Card description text here.</p>
</div>
</div>Przepełnienie i przycinanie wysokości
Gdy zawartość jest wyższa niż określona wysokość, domyślnie wystaje poza element. Połącz narzędzia wysokości z overflow-hidden, aby przyciąć zawartość, z overflow-y-auto, aby dodać pasek przewijania tylko w razie potrzeby, lub z overflow-y-scroll, aby zawsze go wyświetlać. Jest to niezbędne w przypadku przewijanych pasków bocznych, okien czatu i bloków kodu o stałej wysokości.
<!-- Scrollable content panel with fixed height -->
<div class="h-48 overflow-y-auto border border-gray-200 rounded p-4">
<p class="mb-3">Line 1 of content</p>
<p class="mb-3">Line 2 of content</p>
<p class="mb-3">Line 3 of content</p>
<p class="mb-3">Line 4 — now we scroll</p>
<p class="mb-3">Line 5</p>
<p class="mb-3">Line 6</p>
<p>Line 7 of scrollable content</p>
</div>Przegląd minimalnej i maksymalnej wysokości
Użyj min-h-*, aby zagwarantować, że element nigdy nie będzie niższy od określonej wartości, a max-h-*, aby ograniczyć jego maksymalną wysokość. min-h-screen to często stosowany wzorzec w układach obejmujących całą stronę, które powinny wypełniać obszar widoku nawet wtedy, gdy zawartość jest krótka. max-h-64 wraz z overflow-y-auto to standardowe rozwiązanie dla menu rozwijanych i list wyboru, które nie powinny nadmiernie rosnąć.
<!-- Page fills screen height, content area scrolls if needed -->
<div class="min-h-screen flex flex-col">
<header class="bg-gray-900 text-white p-4">Header</header>
<main class="flex-1 p-6 bg-gray-50">
<!-- flex-1 makes this grow to fill remaining height -->
<p>Page content</p>
</main>
<footer class="bg-gray-200 p-4 text-center">Footer</footer>
</div>Wysokość w rzeczywistych układach
Oto praktyczny komponent karty pokazujący narzędzia wysokości w działaniu. Karta ma miniaturę o stałej wysokości, elastyczny obszar zawartości oraz stopkę o stałej wysokości z przyciskiem akcji. Ten wzorzec jest często stosowany na listach produktów i stronach indeksów blogów, gdzie kluczowa jest spójność wizualna kart o zawartości różnej długości.
<div class="flex flex-col bg-white rounded-xl shadow overflow-hidden w-64">
<!-- Thumbnail: fixed height -->
<div class="h-40 bg-gradient-to-br from-sky-400 to-blue-600"></div>
<!-- Content: grows to fill available space -->
<div class="flex-1 p-4">
<h3 class="font-bold text-gray-900 mb-1">Product Name</h3>
<p class="text-sm text-gray-500">Brief product description here.</p>
</div>
<!-- Footer: fixed height with border -->
<div class="h-14 border-t flex items-center px-4">
<button class="ml-auto bg-blue-500 text-white text-sm px-3 py-1 rounded">
Buy Now
</button>
</div>
</div>Szybki test
Sprawdź znajomość zagadnień Tailwind CSS Mastery z tej lekcji.
Podsumowanie lekcji
W tej lekcji poznali Państwo: stałe narzędzia h-* korzystają z tej samej skali odstępów co w-*, h-screen wypełnia wysokość obszaru widoku, a h-dvh jest nowoczesną alternatywą bezpieczną na urządzeniach mobilnych oraz min-h-screen wraz z flex-col i flex-1 tworzy układy ze stopką przyklejoną do dołu. Następnie omówimy narzędzia ograniczające minimalny i maksymalny rozmiar zarówno szerokości, jak i wysokości.
Ucz się HTML 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
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Narzędzia wysokości” jest bezpłatna?
Tak — pełny tekst „Narzędzia wysokości” 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 Tailwind CSS Academy, przejdź na CoddyKit PRO. Kurs Tailwind CSS Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Narzędzia wysokości”?
Kontrolować wysokość za pomocą stałych wartości h-*, używać h-full do wypełnienia rodzica, h-screen dla wysokości obszaru widoku oraz h-auto dla naturalnego rozmiaru. Ćwiczysz Tailwind 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ąć Tailwind CSS Academy?
Nie wymagamy żadnego doświadczenia. Tailwind 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 2 z 4.
Ile czasu zajmuje lekcja „Narzędzia wysokości”?
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 Tailwind CSS Academy?
Tak. Każda lekcja Tailwind 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
- Narzędzia szerokości
- Narzędzia wysokości
- Ograniczenia minimalne i maksymalne
- Proporcje obrazu