Najkrócej rzecz ujmując, wybór spacji zależy od tego, czy ma łamać wiersz i jak szeroka ma być
- NBSP łączy dwa elementy w jednym wierszu, więc dobrze sprawdza się przy liczbach, skrótach i jednostkach.
- NNBSP daje efekt niełamliwy, ale jest węższa i lepiej wygląda w niektórych zapisach typograficznych.
- Spacje typograficzne typu thin space, en space i em space służą do precyzyjnego ustawiania odstępów, nie do zastępowania zwykłej spacji.
-
W HTML i JavaScript najczęściej użyjesz
,albo\u00A0. -
W CSS często lepsze od ręcznego wstawiania znaków jest sterowanie łamaniem przez
white-space.

Jakie znaki odstępu mają znaczenie w typografii
W codziennej pracy redaktorskiej i front-endowej nie traktuję spacji jako jednego znaku. Zwykły odstęp, spacja niełamliwa, wąska niełamliwa, cienka spacja czy znak zerowej szerokości pełnią różne role i nie da się ich mieszać bez konsekwencji. Różnica najczęściej nie dotyczy tego, czy odstęp istnieje, ale tego, jak zachowuje się przy łamaniu wiersza i jak wygląda w danym kroju pisma.
Unicode rozróżnia takie znaki bardzo precyzyjnie, a w praktyce typograficznej najważniejsze są te, które wpływają na przełamanie linii. W dobrze ustawionym składzie widać to szczególnie przy liczbach, skrótach, symbolach walut i krótkich wyrazach, które nie powinny zostać rozdzielone na końcu wiersza.
| Znaki | Zapis | Co robi | Kiedy go używam |
|---|---|---|---|
| Zwykła spacja | U+0020 |
Rozdziela wyrazy i może łamać wiersz normalnie. | W większości tekstów, czyli tam, gdzie nie trzeba niczego blokować. |
| Spacja niełamliwa |
U+00A0, ,
|
Nie pozwala rozdzielić dwóch elementów między liniami. | Przy liczbach, jednostkach, skrótach, inicjałach i krótkich wyrażeniach. |
| Wąska spacja niełamliwa | U+202F |
Też blokuje łamanie, ale jest węższa niż NBSP. | Gdy liczy się drobniejszy, bardziej elegancki odstęp. |
| Cienka spacja |
U+2009,
|
Daje mniejszy odstęp niż zwykła spacja, ale bez blokowania łamania. | Do precyzyjnego rozdzielania symboli i elementów typograficznych. |
| Spacja em |
U+2003,
|
Tworzy szeroki odstęp zależny od kroju pisma. | W wyjątkowych układach, nie jako zamiennik normalnej spacji. |
| Zero-width space | U+200B |
Nie daje widocznego odstępu, ale może wskazać miejsce łamania. | Przy długich tokenach, adresach, identyfikatorach i technicznych stringach. |
W praktyce najczęściej sięgam po NBSP i NNBSP, bo to one rozwiązują większość problemów w tekstach publikowanych w internecie. Cieńsze i szersze warianty traktuję jako narzędzie specjalistyczne, przydatne wtedy, gdy naprawdę chcę dopracować rytm składu. Kiedy już wiesz, jakie znaki istnieją, łatwiej przejść do ich zapisu w HTML, CSS i kodzie aplikacji.
Jak zapisać je w HTML, CSS i JavaScript
Jeśli treść ma trafić na stronę, nie wystarczy wiedzieć, co chcesz uzyskać. Trzeba jeszcze dobrać zapis, który przetrwa CMS, edytor wizualny, eksport do PDF i kopiowanie przez zespół redakcyjny. Jak podaje MDN, zapis i jego odpowiednik liczbowy są równoważne, a w JavaScripcie ten sam efekt osiąga się zwykle przez kod Unicode.
12 kg
ul. Mickiewicza 10
Jan Kowalski
const label = `12\u00A0kg`;
const city = `ul.\u00A0Mickiewicza`;
W CSS często w ogóle nie muszę wstawiać niewidocznego znaku. Jeśli chcę, żeby krótki fragment nie rozbił się na dwie linie, zwykle lepiej działa reguła white-space: nowrap;. To prostsze niż ręczne upychanie znaków w treści, bo kontroluję zachowanie całego elementu, a nie pojedynczych odstępów.
.badge {
white-space: nowrap;
}
-
normalsprawdza się w zwykłym tekście, bo skleja wielokrotne odstępy i pozwala na normalne zawijanie. -
nowrapblokuje łamanie wiersza, więc nadaje się do krótkich etykiet, cen i przycisków. -
pre-wrapzachowuje odstępy, ale nadal pozwala na łamanie, więc bywa wygodne w blokach z przykładowym kodem lub cytatem.
Najważniejsza zasada jest prosta: jeśli chcesz wpłynąć na układ, najpierw rozważ CSS, a dopiero potem wstawiaj znak do tekstu. To prowadzi wprost do pytania, kiedy zwykła spacja przestaje wystarczać w redakcji i na stronie.
Kiedy zwykła spacja to za mało w redakcji i na stronie
W treściach internetowych najczęściej walczę z trzema sytuacjami: liczbą przy jednostce, skrótem przy nazwie oraz krótkim wyrazem, który nie powinien zostać samotnie na końcu wiersza. W takich miejscach zwykła spacja wygląda poprawnie, ale zachowuje się źle. Dlatego w praktyce stosuję spację niełamliwą tam, gdzie czytelność zależy od tego, czy dwa elementy pozostaną razem.
-
Liczby i jednostki - zapis typu
12 kg,250 złalbo4 GBwygląda poprawnie i nie rozbije się na końcu wiersza. -
Skróty i nazwy -
ul. Mickiewicza,nr 5czyprof. Nowaksą czytelniejsze, gdy nie dzielą się na pół. -
Inicjały i nazwiska -
J. Kowalskiwygląda lepiej niż wersja, w której inicjał zostaje sam. - Krótke słowa w składzie - po krótkich przyimkach i spójnikach używam NBSP tylko wtedy, gdy chcę uniknąć sierotek.
- Etykiety w interfejsie - nazwy planów, badge, przyciski i filtry często lepiej trzymać w jednym wierszu niż zmuszać przeglądarkę do desperackiego łamania.
W typografii webowej ważny jest też dobór szerokości odstępu. Unicode wskazuje, że NNBSP bywa lepsza tam, gdzie potrzebny jest wąski, ale nadal niełamliwy odstęp, zwłaszcza przy zapisie liczbowym lub w bardziej dopracowanym składzie. Właśnie dlatego nie zawsze wybieram „zwykłe” - czasem jest po prostu zbyt szerokie wizualnie.
Ja szczególnie pilnuję tych miejsc w cennikach, kartach produktów i opisach usług, bo tam zły podział wiersza psuje odbiór już na pierwszym ekranie. Kiedy tekst ma działać w CMS, sklepie albo na landing page’u, praktyczność wygrywa z dekoracją. Ale to działa tylko wtedy, gdy nie przesadzimy z liczbą niewidocznych znaków.
Jak nie popsuć składu przez nadużywanie niewidocznych znaków
Najczęstszy błąd widzę wtedy, gdy ktoś zamienia każdą spację na NBSP, jakby był to uniwersalny plaster na wszystkie problemy z układem. To zły kierunek. Nadmiar niełamliwych odstępów utrudnia późniejszą edycję, komplikuje kopiowanie treści i czasem powoduje dziwne zachowanie przy responsywnym łamaniu tekstu.
Drugi błąd to używanie tabulatorów do wyrównywania treści. Taby nie są typograficznym zamiennikiem spacji, bo ich szerokość zależy od środowiska, a w różnych edytorach i renderach zachowują się inaczej. Do wyrównywania używam CSS, a do samego tekstu - właściwych znaków odstępu.
Trzeci problem to nadużywanie jako zastępstwa odstępów. Ten element ma służyć do złamania linii, a nie do budowania pustej przestrzeni między blokami. Jeśli potrzebuję odstępu między akapitami, sekcjami albo etykietami, stosuję margin i padding, bo to daje przewidywalny efekt w każdym rozmiarze ekranu.
- Nie używam NBSP do formatowania całych akapitów.
- Nie stawiam wielu spacji obok siebie, licząc na to, że przeglądarka je zachowa.
- Nie wyrównuję layoutu znakami tekstowymi, jeśli zadanie należy do CSS.
- Nie zostawiam `nowrap` na długich blokach bez sprawdzenia zachowania na mobile.
- Nie traktuję niewidocznych znaków jak ozdoby, tylko jak narzędzie do precyzyjnego składu.
W treściach SEO i na stronach sprzedażowych przejrzystość wygrywa z „sprytnymi” trikami. Jeśli znak ma rozwiązać jeden konkretny problem, używam go punktowo. Jeśli problem dotyczy całego komponentu, przenoszę kontrolę do stylów. Na tym etapie zostaje już tylko praktyczny wybór rozwiązania, które da się utrzymać także po kolejnej aktualizacji strony.
Jak dobieram rozwiązanie, gdy tekst ma działać w CMS i SEO
Gdy pytanie dotyczy spacji inaczej, ja zaczynam od jednego prostego testu: czy ten odstęp ma tylko wyglądać, czy ma też kontrolować łamanie wiersza. Jeśli ma kontrolować - wybieram znak niełamliwy albo CSS. Jeśli nie - zostawiam zwykłą spację, bo to najczystsze i najłatwiejsze w utrzymaniu rozwiązanie.W praktyce trzymam się czterech reguł: zwykła spacja do zwykłego tekstu, NBSP do rzeczy, które nie mogą się rozdzielić, NNBSP do węższego i bardziej eleganckiego składu, a white-space do całych elementów interfejsu. Taki podział pozwala zachować porządek w treści, nie utrudnia pracy redakcji i dobrze skaluje się na różnych ekranach.
Jeśli mam doradzić jedną rzecz, to tę: najpierw rozwiąż problem składu, a dopiero potem myśl o samym znaku. W większości serwisów wygrywa prostota, bo zwykła spacja wystarcza tam, gdzie nie trzeba sterować łamaniem, a niełamliwy odstęp i CSS są tylko precyzyjnym uzupełnieniem tam, gdzie naprawdę robią różnicę.