HTML area - Jak tworzyć klikalne strefy na obrazach?

Białe kafelki z literami H, T, M, L ułożone na szarym tle, tworząc słowo HTML.

Napisano przez

Alex Jabłoński

Opublikowano

14 cze 2026

Spis treści

Element `` pozwala zamienić pojedynczy obraz w zestaw osobnych, klikalnych stref. W praktyce html area to rozwiązanie dla planów, map, schematów i infografik, gdzie jeden kadr ma prowadzić do kilku różnych miejsc. Poniżej pokazuję, jak to działa, jakich atrybutów nie pomylić i kiedy lepiej wybrać prostszą nawigację albo SVG.

Najważniejsze fakty o mapach obrazów i elemencie ``

  • `` działa wyłącznie wewnątrz ``, a obraz łączy się z mapą przez `usemap`.
  • Najczęściej używa się kształtów `rect`, `circle`, `poly` oraz `default`.
  • Jeśli `href` jest obecny, opis w `alt` powinien być konkretny, bo to realna treść linku.
  • Mapy obrazów są mniej wygodne na małych ekranach niż zwykłe linki albo SVG.
  • Najlepiej sprawdzają się przy statycznych grafikach z wyraźnie oddzielonymi strefami.

Do czego służy element ``

Ja traktuję ten element jako sposób na zrobienie z jednego obrazu kilku niezależnych linków. Każdy taki fragment to hotspot, czyli aktywny obszar na ilustracji; jeśli `href` nie występuje, strefa staje się martwa i nie prowadzi nigdzie. To ma sens przede wszystkim wtedy, gdy sama grafika niesie znaczenie: plan budynku, schemat urządzenia, mapa, dashboard z ikonami albo infografika z regionami do kliknięcia. W zwykłej nawigacji prawie zawsze wygrają linki tekstowe, ale przy dobrze zaprojektowanej grafice `` nadal bywa najprostszym rozwiązaniem.

Sama idea jest prosta, ale prawdziwa wartość wychodzi dopiero przy składaniu mapy i dopasowaniu jej do obrazu, więc przechodzę od razu do praktyki.

Jak zbudować mapę obrazu krok po kroku

Najpewniejszy schemat jest zawsze ten sam: `` dostaje `usemap`, `` dostaje `name`, a w środku definiujesz kolejne ``. Warto pamiętać, że współrzędne są liczone od lewego górnego rogu obrazu i odnoszą się do jego naturalnego rozmiaru, a nie do tego, jak duży obraz widzisz po CSS.

Przeczytaj również: Gradienty CSS - Jak je wykorzystać w nowoczesnym UI?

Minimalny układ HTML

Plan piętra z trzema strefami


  Sala szkoleniowa
  Strefa relaksu
  Recepcja

To działa, bo obraz i mapa są ze sobą sparowane przez identyczną nazwę: `usemap="#plan-pietra"` wskazuje na `map name="plan-pietra"`.

Jeżeli chcesz, by klikalna była cała grafika, możesz użyć obszaru domyślnego, ale wtedy sens mapy mocno się kurczy i częściej lepiej wrócić do zwykłego `` wokół ``. W praktyce wybieram to tylko wtedy, gdy potrzebuję jednej ilustracji z pojedynczym wyjątkiem, a nie pełnej siatki hotspotów.

Po samej składni zostają jeszcze atrybuty, które decydują, czy link jest poprawny i czytelny dla użytkownika.

Atrybuty, które naprawdę mają znaczenie

Najwięcej błędów widzę nie w samym HTML-u, ale w pomyleniu ról atrybutów. Poniższa tabela porządkuje to, co faktycznie trzeba kontrolować.

Atrybut Rola Na co zwracam uwagę
href Określa adres docelowy. Bez niego obszar nie działa jak link; wtedy to strefa nieklikalna.
alt Opis linku dla technologii wspomagających i sytuacji bez obrazu. Przy aktywnym `href` powinien być konkretny, nie dekoracyjny.
shape Wybiera geometrię hotspotu. `rect`, `circle` i `poly` wystarczają w większości przypadków; `default` obejmuje cały obraz.
coords Podaje współrzędne kształtu. Liczy się kolejność i dokładność punktów; jeden błąd przesuwa hotspot.
name / usemap Łączy obraz z mapą. Wartość w `usemap` musi wskazywać na `name` poprzedzone `#`.

W specyfikacji HTML `alt` jest obowiązkowy, gdy obszar ma `href`, a bez `href` obszar nie reprezentuje linku. To detal, który warto zapamiętać, bo później oszczędza poprawki w dostępności i testach.

Najczęściej problemy nie wynikają z samego kodu, tylko z tego, że autor źle policzył punkty albo zapomniał, że obraz po CSS wygląda inaczej niż plik źródłowy. I właśnie tu zaczyna się temat dostępności, bo technicznie poprawny kod nadal może być trudny w obsłudze.

Interaktywna mapa na ekranie komputera, otoczona oknami z kodem, symbolizująca tworzenie aplikacji webowych i map w **html area**.

Przykłady, w których mapy obrazów faktycznie pomagają

Ja najczęściej widzę sens w czterech sytuacjach. W każdej z nich chodzi o to samo: obraz ma znaczenie informacyjne, a nie tylko dekoracyjne.

Przykład Dlaczego działa Na co uważać
Plan budynku Użytkownik widzi układ pomieszczeń i od razu rozumie, gdzie kliknąć. Pomieszczenia muszą mieć dość duże hotspoty, bo na mobile drobne strefy stają się męczące.
Mapa regionów Jedna grafika może prowadzić do wielu stron z lokalnym opisem lub ofertą. Małe regiony bywają trudne do trafienia, więc nie każdy atlas będzie dobrym kandydatem.
Infografika produktu Hotspoty pozwalają rozbić jeden schemat na konkretne sekcje funkcji. Opis w `alt` musi być naprawdę pomocny, nie marketingowy.
Schemat urządzenia Techniczne rysunki często naturalnie dzielą się na osobne elementy. Jeżeli układ zmienia się responsywnie, koordynaty trzeba utrzymywać w synchronizacji.

MDN słusznie zwraca uwagę, że hotspoty powinny być czytelne i wygodne do kliknięcia, a nie tylko zgodne z pikselami projektu. W praktyce wolę strefy większe niż estetycznie „idealne”, bo użytkownik palcem nie trafia z dokładnością grafika z figma exportu.

Jeżeli któraś ze stref ma być mała jak punkt na mapie, zwykle lepiej od razu myśleć o innym rozwiązaniu, bo właśnie tu zaczynają się problemy z dostępnością i responsywnością.

Dostępność i responsywność bez złudzeń

Ta część decyduje o tym, czy mapa obrazu zostaje w projekcie, czy kończy jako ciekawostka z demo. Technicznie wszystko może działać, ale użytkownicy klawiatury, czytników ekranu i telefonów szybko pokażą, gdzie rozwiązanie się rozjeżdża.

  • Dbam o kolejność `` tak, by odpowiadała temu, co użytkownik widzi na obrazie. Dzięki temu fokus klawiatury nie skacze chaotycznie.
  • Nie pomijam `alt`, bo to tekst alternatywny, który zastępuje samą strefę linku. Bez niego hotspot staje się nieczytelny dla części użytkowników.
  • Sprawdzam rozmiar stref. Praktyczny punkt odniesienia to około 72 × 72 CSS px dla wygodnego dotyku, choć oczywiście nie każdy projekt da się do tego idealnie dopasować.
  • Testuję klawiaturą, bo mapy obrazów bywają zdradliwe. Jeśli nie da się sensownie przejść przez hotspoty tabulatorem, frontend jest tylko pozornie działający.
  • Uważam na skalowanie obrazu. Koordynaty nie przeliczają się magicznie razem z CSS, więc przy responsywnych grafikach trzeba to rozwiązać świadomie, a nie liczyć na przeglądarkę.
  • Nie nadużywam tej samej mapy na kilku obrazach. W części przeglądarek potrafi to psuć kolejność fokusu i obniżać użyteczność.

Jeśli chcesz potraktować tę technikę poważnie, zawsze robię jeszcze jeden test: wyłączam obraz lub patrzę na stronę bez myszy. Jeżeli link nadal jest zrozumiały, to znak, że użyteczność stoi na właściwym poziomie.

Po tych ograniczeniach naturalnie pojawia się pytanie, czy `` rzeczywiście jest najlepszym wyborem, czy tylko starym zwyczajem odziedziczonym po dawnym frontendzie.

Kiedy lepiej wybrać SVG, zwykłe linki albo coś prostszego

Wbrew pozorom to nie jest pytanie o technologię, tylko o wygodę utrzymania. Ja bardzo często wybieram prostsze rozwiązanie, jeśli tylko daje ten sam efekt przy mniejszym ryzyku błędu.

Rozwiązanie Mocne strony Słabe strony Kiedy wybieram
`` i `` Proste w HTML, szybkie do wdrożenia na statycznej grafice. Słabiej znosi responsywność i wymaga pilnowania koordynatów. Gdy obraz jest stały, a strefy są wyraźne i nieliczne.
Zwykłe linki tekstowe Najlepsza czytelność, SEO i dostępność. Mniej efektowne wizualnie, jeśli projekt wymaga pracy na obrazie. Gdy priorytetem jest prostota i długowieczność treści.
SVG Skaluje się naturalnie, łatwiej opisać kształty i style. Wymaga innego przygotowania grafiki niż bitmapa. Gdy interakcja ma być precyzyjna i responsywna.
Canvas + JavaScript Daje dużą swobodę wizualną i interakcyjną. Więcej kodu, większy koszt utrzymania, trudniejsza dostępność. Gdy faktycznie potrzebujesz niestandardowej logiki rysowania.

Jeśli projekt ma być długowieczny, responsywny i łatwy do utrzymania, SVG bardzo często wygrywa. Jeśli jednak pracujesz na gotowej bitmapie, a strefy są stałe i wyraźne, `` nadal ma sens i potrafi zaoszczędzić sporo pracy.

Właśnie dlatego zostawiam sobie prostą listę kontrolną przed publikacją, bo ona szybko pokazuje, czy rozwiązanie broni się w realnym projekcie.

Co sprawdzam przed publikacją mapy obrazu

  • Czy każdy aktywny obszar ma sensowny opis w `alt`.
  • Czy hotspoty są na tyle duże, by dało się je kliknąć palcem.
  • Czy kolejność `` odpowiada temu, jak użytkownik widzi obraz.
  • Czy obraz nie skaluje się szybciej niż koordynaty.
  • Czy naprawdę nie da się tego prościej zrobić zwykłymi linkami lub SVG.

Jeżeli te pięć punktów przechodzi bez zgrzytu, mapa obrazu jest obroniona. W przeciwnym razie zwykle lepiej wrócić do prostszej nawigacji, bo frontend wygrywa nie wtedy, gdy da się zrobić więcej, tylko wtedy, gdy da się zrobić czytelniej.

FAQ - Najczęstsze pytania

Element `` pozwala zamienić pojedynczy obraz w zestaw klikalnych stref, działając jak niezależne linki. Jest idealny do map, planów czy infografik, gdzie jeden obraz prowadzi do wielu miejsc.

Najczęściej używane kształty to `rect` (prostokąt), `circle` (koło) i `poly` (wielokąt). Dostępny jest też `default`, który obejmuje cały obraz, ale jego użycie jest rzadsze.

Tak, `alt` jest kluczowy. Jeśli obszar ma `href`, `alt` powinien być konkretnym opisem linku dla technologii wspomagających i użytkowników, dla których obraz się nie załadował. Bez niego link staje się nieczytelny.

SVG jest lepszym wyborem, gdy potrzebujesz precyzyjnej, responsywnej i skalowalnej interakcji. `` sprawdza się przy statycznych grafikach z wyraźnie oddzielonymi strefami, ale SVG oferuje większą elastyczność i łatwość utrzymania przy dynamicznych projektach.

Oceń artykuł

Ocena: 0.00 Liczba głosów: 0

Tagi:

html area html area tag jak używać elementu area

Udostępnij artykuł

Alex Jabłoński

Alex Jabłoński

Nazywam się Alex Jabłoński i od 9 lat zajmuję się programowaniem webowym. Moja przygoda z tą dziedziną zaczęła się od prostych projektów, które z czasem przerodziły się w pasję do tworzenia użytecznych i estetycznych aplikacji internetowych. Fascynuje mnie nie tylko sam proces kodowania, ale także to, jak technologie wpływają na nasze życie i jak możemy je wykorzystać, aby rozwiązywać codzienne problemy. Piszę o różnych aspektach programowania, od podstawowych języków po bardziej zaawansowane techniki i narzędzia. Staram się, aby moje teksty były przystępne i zrozumiałe, a skomplikowane zagadnienia przedstawiam w prosty sposób. Regularnie śledzę nowinki w branży, co pozwala mi dostarczać aktualne i rzetelne informacje. Moim celem jest nie tylko edukacja, ale także inspirowanie innych do rozwijania swoich umiejętności w programowaniu.

Napisz komentarz