Ropa naftowa, spadek cen ropy. Koncepcja na tablicy kredowej

Znaczniki br i wbr w HTML – jak łamać linie i słowa

10 min. czytania

Znaczniki <br> i <wbr> w HTML służą do kontrolowania łamania linii i wyrazów, ale działają inaczej: <br> wymusza przejście do nowej linii, a <wbr> jedynie wskazuje potencjalne miejsce podziału, z którego przeglądarka skorzysta tylko wtedy, gdy będzie to potrzebne.

W tym artykule przejdziemy od podstaw do dobrych praktyk – z naciskiem na semantykę, responsywność i dostępność (w tym zachowanie czytników ekranu).

1. Jak HTML traktuje łamanie linii

W „surowym” HTML pojedyncze i wielokrotne spacje są zazwyczaj zwijane do jednej spacji, a znak nowej linii w kodzie (Enter) nie powoduje automatycznego przejścia do nowej linii w przeglądarce.

Aby ręcznie przenieść tekst do nowej linii, trzeba użyć specjalnego elementu – do tego służy właśnie <br>.

2. Znacznik <br> – „twarde” łamanie linii

Co robi <br>

Znacznik <br> (od break) tworzy złamanie linii, czyli sprawia, że tekst po nim zaczyna się od nowej linii.

Najważniejsze cechy elementu <br> są następujące:

  • pusty element – nie wymaga znacznika zamykającego;
  • zachowuje się jak Enter – po <br> kolejny fragment jest renderowany w następnym wierszu;
  • element liniowy – nie dodaje pionowego odstępu jak elementy blokowe (np. <p>).

Przykład użycia wygląda tak:

<p>To jest pierwsza linia.<br>To jest druga linia.</p>

Tutaj „To jest druga linia.” zawsze zacznie się w nowym wierszu, dokładnie w miejscu wstawienia <br>.

Kiedy używać <br>

Zgodnie z typowymi zastosowaniami <br> służy do łamania linii w ramach jednego fragmentu tekstu, gdy nie chcemy tworzyć nowego akapitu.

Do poprawnych scenariuszy należą m.in.:

  • adresy pocztowe,
  • wiersze poezji,
  • podpisy, krótkie cytaty lub formularze, gdzie linie są logicznie powiązane.

Tak można sformatować adres:

<address>
Jan Kowalski<br>
ul. Przykładowa 12<br>
00-000 Warszawa
</address>

Tak można złamać wersy w wierszu:

<p>
Nad wodą wielką i czystą<br>
Stał wiatr smukły i cichy
</p>

Czego nie robić z <br>

Częsty błąd początkujących to używanie <br><br> zamiast semantycznych akapitów <p>, aby uzyskać większą przerwę w tekście. Dwa <br> pod rząd wizualnie przypominają odstęp między akapitami, ale nie oznaczają nowej myśli ani nowego akapitu semantycznie, co utrudnia pracę czytnikom ekranu, narzędziom indeksującym i utrudnia spójne stylowanie CSS.

Jeśli fragmenty tekstu to osobne wątki lub akapity, używaj <p>, a odstępy kontroluj w CSS (np. przez margin-bottom); <br> zostaw do lokalnych i celowych złamań linii wewnątrz jednego akapitu.

3. Znacznik <wbr> – miękkie łamanie wyrazów i długich ciągów

Co robi <wbr>

Znacznik <wbr> (od word break opportunity) reprezentuje potencjalne złamanie wiersza – miejsce, w którym przeglądarka może przenieść tekst do następnej linii, jeśli będzie to konieczne.

Kluczowe cechy elementu <wbr> są następujące:

  • nie wymusza podziału – jest ignorowany, jeśli tekst mieści się w wierszu;
  • wskazuje bezpieczne miejsce na rozdzielenie długiego ciągu znaków (np. identyfikatory, adresy, złożone nazwy), aby nie rozjeżdżał layoutu;
  • jest pustym elementem – nie ma znacznika zamykającego.

Oto prosty przykład:

<p>
BardzoDługiTechnicznyIdentyfikator<wbr>BezSpacjiKtóryMożeRozjechaćLayout
</p>

Jeśli szerokość kontenera będzie zbyt mała, przeglądarka może złamać wiersz dokładnie w miejscu <wbr>, zamiast rozciągać poziomy scroll lub „wyjeżdżać” tekstem poza ekran.

<wbr> a tekst w <pre>

<wbr> jest szczególnie przydatny, gdy mamy długi ciąg znaków bez spacji lub gdy tekst znajduje się w <pre>, gdzie przeglądarka zachowuje oryginalne białe znaki.

Warto zapamiętać tę definicję:

wbr służy do wskazania przeglądarce, w którym miejscu może nastąpić przełamanie, jeśli jednolity ciąg znaków jest zbyt długi, lub jeśli tekst jest co prawda rozdzielany spacjami, ale jest zamknięty pomiędzy znacznikami <pre>.

Tak może wyglądać użycie w bloku z zachowaniem białych znaków:

<pre>
GET /bardzo-dluga-ścieżka-do-zasobu<wbr>?z-parametrami=jeszcze-dłuższymi
</pre>

Podział nastąpi tylko wtedy, gdy linia nie będzie mieścić się w dostępnej szerokości – w przeciwnym razie <wbr> zostanie zignorowany.

<wbr> a responsywność

We współczesnych projektach <wbr> poprawia responsywność na urządzeniach mobilnych, pozwalając dzielić długie słowa lub ciągi znaków tak, aby lepiej dopasować je do wąskich ekranów.

Oto typowe zastosowania w praktyce:

  • długie nazwy produktów oraz klas i modułów (np. CSS/JS),
  • identyfikatory zamówień i transakcji,
  • adresy e‑mail, URL‑e, numeracje wersji i różnego rodzaju hashe.

Przykład z numerem zamówienia:

<p>
Numer zamówienia: ABCD-2024-09-123456789<wbr>-PL
</p>

4. <br> vs <wbr> – porównanie

Poniższa tabela zestawia najważniejsze różnice między elementami <br> i <wbr>:

Cecha <br> <wbr>
Typ łamania twarde – zawsze łamie linię w danym miejscu miękkie – łamie linię tylko, gdy jest to konieczne
Czy wymusza nową linię tak, bezwarunkowo nie, to tylko „okazja” do złamania
Główne zastosowanie adresy, poezja, kontrolowane układy tekstu bez nowego akapitu długie słowa, identyfikatory, URL‑e, ciągi znaków dla responsywności
Czy dzieli wyraz może wizualnie przeciąć wyraz, ale zwykle tego nie chcemy służy wprost do bezpiecznego dzielenia wyrazów lub ciągów znaków
Element pusty, liniowy pusty
Reakcja na szerokość kontenera zawsze przełamuje, niezależnie od szerokości reaguje na szerokość – łamie tylko, gdy tekst się nie mieści

5. Przykłady praktyczne z omówieniem

Łamanie linii w tekście – poprawne użycie <br>

Adres sformatowany w linie wygląda następująco:

<address>
Fundacja Przykład<br>
ul. Koderska 10<br>
01-234 Kraków
</address>

Tutaj każda część adresu logicznie jest jedną linią – <br> jest semantycznie i dostępnościowo akceptowalne.

Wiersz z łamaniem wersów w jednym akapicie:

<p>
Pierwszy wers wiersza<br>
Drugi wers wiersza<br>
Trzeci wers wiersza
</p>

Linie są częścią jednego utworu, więc <br> sygnalizuje łamanie wersów, a nie nowe akapity.

„Fałszywe” akapity – czego unikać

Takie użycie jest błędne i podyktowane wyłącznie próbą uzyskania odstępu:

<p>Pierwszy akapit tekstu...</p>
<br><br>
<p>Drugi akapit tekstu...</p>

Prawidłowo należy tworzyć semantyczne akapity i kontrolować odstępy w CSS:

<p>Pierwszy akapit tekstu...</p>
<p>Drugi akapit tekstu...</p>

Dzielenie długich słów i identyfikatorów przy użyciu <wbr>

Wieloczłonowy identyfikator można zabezpieczyć w ten sposób:

<p>
Identyfikator transakcji: TX-1234567890<wbr>-ABCDEFGHIJKL<wbr>-MNOPQRSTUWXYZ
</p>

Na szerokich ekranach ciąg może zmieścić się w jednej linii.

Na wąskich przeglądarka będzie mogła złamać linię w miejscach <wbr>, co zapobiegnie poziomemu przewijaniu lub rozjechaniu layoutu.

To samo dotyczy długiego adresu e‑mail:

<p>
Kontakt: bardzo.długi.adres.email<wbr>@przykladowa-domena<wbr>.pl
</p>

Dzięki <wbr> adres może zostać estetycznie złamany, gdy zabraknie miejsca, bez wprowadzania spacji w samym e‑mailu.

<wbr> w <pre> – czytelne długie linie

Oto przykład z instrukcją HTTP, gdzie chcemy zachować białe znaki, a mimo to umożliwić awaryjne zawijanie:

<pre>
GET /bardzo-długa-ścieżka-do-zasobu<wbr>?parametr=jeszcze-dłuższa-wartość
HTTP/1.1
Host: api.przyklad.pl
</pre>

W <pre> przeglądarka nie zawija linii automatycznie, ale dzięki <wbr> może w razie potrzeby przełamać ją w logicznym miejscu.

6. Dostępność: <br> i <wbr> a czytniki ekranu

Jak czytniki interpretują <br>

Czytniki ekranu zwykle interpretują <br> jako przerwę wiersza i przechodzą do nowej linii podczas czytania. W wielu sytuacjach jest to zachowanie pożądane (np. adres, wersy wiersza). Nadużywanie <br> do tworzenia „akapitów” prowadzi jednak do niejasnej struktury – narzędzia wspomagające nie dostają sygnału, że to odrębne akapity czy sekcje.

Z punktu widzenia dostępności semantyka ma pierwszeństwo: do struktury używaj <p>, nagłówków i list; <br> stosuj wtedy, gdy opisujesz jedną logiczną wypowiedź podzieloną na linie, a nie odrębne akapity.

Jak czytniki traktują <wbr>

<wbr> reprezentuje potencjalne złamanie wiersza i nie ma własnej treści tekstowej. Dla użytkownika czytnika ekranu <wbr> nie jest odczytywany jako osobny element – tekst jest czytany płynnie niezależnie od tego, czy nastąpiło zawinięcie wizualne.

To czyni <wbr> bezpiecznym narzędziem do kontroli layoutu długich ciągów bez ingerencji w semantykę zdania.

Gdzie uważać na łamanie słów

Aby zachować czytelność, unikaj łamania słów w miejscach, które mogłyby utrudnić zrozumienie (zwłaszcza w językach fleksyjnych). Jeśli stosujesz <wbr> w środku normalnych słów, umieszczaj je zgodnie z zasadami dzielenia wyrazów.

7. Dobre praktyki przy korzystaniu z <br> i <wbr>

Najpierw semantyka, potem prezentacja

Trzy kluczowe zasady porządkowania treści i kontrolowania łamań:

  • semantyczna struktura – do budowy treści używaj elementów takich jak <p>, <h1><h6>, <ul>, <ol>, <li>, <section> i podobnych;
  • oszczędne użycie <br> – gdy logiczna treść pozostaje jednym akapitem, ale potrzebujesz kontrolowanego złamania linii (np. adres, wiersz, krótki formularz);
  • rozsądne użycie <wbr> – do kontrolowania zawijania bardzo długich ciągów znaków i ochrony layoutu na małych ekranach.

Choć w tym artykule mówimy o HTML, wiele efektów można osiągnąć czystym CSS: odstępy między akapitami i wysokość linii ustawisz regułami typografii, a zawijanie kontrolują właściwości takie jak overflow-wrap, word-break i hyphens.

<br> i <wbr> powinny być uzupełnieniem, a nie podstawą layoutu.

Unikaj „rysowania layoutu” <br>-ami

<br> nie jest narzędziem do:

  • tworzenia marginesów i „pustych linii” wokół bloków,
  • ustawiania pionowych odstępów między sekcjami,
  • budowania całych układów strony.

Do tych zadań służą bloki HTML oraz CSS; <br> ma charakter typograficzny, a nie layoutowy.