5.8. Odstępy między literami i słowami (letter-spacing
, word-spacing
)
letter-spacing
, word-spacing
)
Wprowadzenie: Precyzyjna kontrola odstępów
Oprócz podstawowych właściwości typograficznych, CSS pozwala również na precyzyjną kontrolę odstępów między poszczególnymi znakami (literami) oraz całymi słowami w tekście. Służą do tego właściwości letter-spacing
i word-spacing
.
Subtelne dostosowanie tych odstępów może znacząco wpłynąć na czytelność, estetykę i ogólny wygląd tekstu, szczególnie w nagłówkach, logotypach czy akcentowanych fragmentach.
Właściwość letter-spacing
(Odstępy między literami)
Właściwość letter-spacing
kontroluje dodatkową przestrzeń **między znakami (literami)** w tekście. Jest to często określane jako **tracking** w typografii (nie mylić z kerningiem, który dotyczy odstępów między konkretnymi parami liter).
Może przyjmować następujące wartości:
normal
: Normalne odstępy między literami, zdefiniowane przez samą czcionkę. Jest to wartość domyślna.<długość>
: Określa dodatkową przestrzeń, która ma być dodana (lub odjęta, jeśli wartość jest ujemna) do domyślnych odstępów między znakami. Można używać jednostek takich jakpx
,em
,rem
.- Wartość dodatnia (np.
2px
,0.1em
) zwiększa odstępy, rozstrzelając litery. - Wartość ujemna (np.
-1px
,-0.05em
) zmniejsza odstępy, zagęszczając litery.
- Wartość dodatnia (np.
h1 {
/* Lekkie zwiększenie odstępów w nagłówku dla lepszej czytelności */
letter-spacing: 1px;
}
.logo-text {
/* Znaczne rozstrzelenie liter w logotypie */
letter-spacing: 0.2em;
text-transform: uppercase;
}
.condensed-text {
/* Zmniejszenie odstępów dla uzyskania zagęszczonego efektu */
letter-spacing: -0.5px;
}
.normal-spacing {
letter-spacing: normal;
}
Uwaga: Nadmierne zwiększanie lub zmniejszanie letter-spacing
może znacząco pogorszyć czytelność tekstu. Należy używać tej właściwości z umiarem, głównie do subtelnych korekt lub celów stylistycznych.
Właściwość word-spacing
(Odstępy między słowami)
Właściwość word-spacing
kontroluje dodatkową przestrzeń **między słowami** w tekście.
Może przyjmować następujące wartości:
normal
: Normalne odstępy między słowami, zdefiniowane przez czcionkę i przeglądarkę. Jest to wartość domyślna.<długość>
: Określa dodatkową przestrzeń, która ma być dodana (lub odjęta) do domyślnych odstępów między słowami. Można używać jednostek takich jakpx
,em
,rem
.- Wartość dodatnia (np.
5px
,0.25em
) zwiększa odstępy między słowami. - Wartość ujemna (np.
-2px
,-0.1em
) zmniejsza odstępy między słowami (może prowadzić do ich nachodzenia na siebie).
- Wartość dodatnia (np.
.rozstrzelone-slowa {
/* Zwiększenie odstępów między słowami */
word-spacing: 0.5em;
}
.zageszczone-slowa {
/* Zmniejszenie odstępów między słowami (używać ostrożnie!) */
word-spacing: -3px;
}
.normal-word-spacing {
word-spacing: normal;
}
Uwaga: Modyfikowanie word-spacing
jest mniej powszechne niż letter-spacing
. Zbyt duże lub zbyt małe odstępy między słowami mogą drastycznie wpłynąć na rytm czytania i czytelność. Wartość word-spacing
jest również modyfikowana przez przeglądarkę podczas justowania tekstu (text-align: justify;
).
Dziedziczenie
Obie właściwości, letter-spacing
i word-spacing
, są **dziedziczone**. Oznacza to, że ustawienie ich na elemencie nadrzędnym wpłynie również na elementy potomne, chyba że zostaną one jawnie nadpisane dla potomka.
Zadania praktyczne
Zadanie 1 (z rozwiązaniem)
Masz nagłówek h1
z tekstem "WITAMY NA STRONIE". Użyj CSS, aby zamienić tekst na wielkie litery (text-transform: uppercase;
) i lekko zwiększyć odstępy między literami o 2px
.
Rozwiązanie:
CSS:
h1 {
text-transform: uppercase;
letter-spacing: 2px;
}
Efekt: Tekst nagłówka będzie wyświetlony jako "W I T A M Y N A S T R O N I E" (zwiększone odstępy między literami).
Zadanie 2 (do samodzielnego wykonania)
Stwórz paragraf z kilkoma zdaniami. Zastosuj do niego word-spacing: 0.3em;
i zaobserwuj, jak zwiększyły się odstępy między słowami. Czy tekst jest nadal czytelny?
Zadanie 3 (do samodzielnego wykonania)
Użyj ujemnej wartości letter-spacing
(np. -1px
) dla elementu span
, aby uzyskać efekt zagęszczonego tekstu. Zastosuj to do jakiegoś krótkiego słowa i zobacz efekt.
FAQ - Najczęściej zadawane pytania
Czy letter-spacing
to to samo co kerning?
Nie do końca. letter-spacing
(tracking) równomiernie zwiększa lub zmniejsza odstępy między wszystkimi znakami. Kerning to dostosowywanie odstępów między konkretnymi *parami* znaków (np. zmniejszenie odstępu między "A" i "V"), co jest zazwyczaj wbudowane w samą czcionkę. CSS nie daje bezpośredniej kontroli nad kerningiem, ale właściwość font-kerning
(wartości: auto
, normal
, none
) pozwala sugerować przeglądarce, czy ma używać informacji o kerningu zawartych w czcionce.
Jakich jednostek najlepiej używać dla letter-spacing
i word-spacing
?
Często używa się jednostek relatywnych jak em
, ponieważ dostosowują one odstępy proporcjonalnie do rozmiaru czcionki. Na przykład letter-spacing: 0.05em;
doda odstęp równy 5% aktualnego rozmiaru czcionki. Użycie px
daje stały odstęp, niezależny od rozmiaru czcionki.
Czy te właściwości wpływają na szerokość elementu?
Tak, zwiększenie letter-spacing
lub word-spacing
naturalnie sprawi, że tekst zajmie więcej miejsca w poziomie, co może wpłynąć na zawijanie linii lub szerokość elementów, jeśli nie mają one ustalonej szerokości lub używają width: auto;
.
Czy mogę używać wartości procentowych dla letter-spacing
lub word-spacing
?
Nie, standard CSS nie dopuszcza wartości procentowych dla tych właściwości. Należy używać wartości normal
lub jednostek długości (px
, em
, rem
itp.).