Jak ustawić rozmiar czcionki w CSS
Właściwość font-size ustala rozmiar tekstu. Ustaw ją na dowolnym elemencie, a każdy fragment tekstu w nim odziedziczy ten rozmiar, chyba że dziecko ustawi własny.
Żeby zmienić rozmiar czcionki w HTML, nadal używasz CSS. Dodaj atrybut style (<p style="font-size: 20px;">) albo regułę w arkuszu stylów. Znacznik <font size="5"> z lat 90. jest przestarzały i nie ma miejsca na nowoczesnej stronie.
Jednostki, które przyjmuje font-size
| Wartość | Przykład | Względem czego |
|---|---|---|
px | 16px | Niczego: stały rozmiar |
rem | 1.25rem | Rozmiaru czcionki elementu głównego <html> (domyślnie 16px) |
em | 1.2em | Rozmiaru czcionki elementu rodzica |
% | 120% | Rozmiaru czcionki rodzica, jak em (120% to 1.2em) |
| Słowo kluczowe | large | Gotowej skali wokół domyślnego medium |
| Względne słowo kluczowe | smaller, larger | O jeden stopień od rozmiaru rodzica |
| Obszar widoku | 4vw | Szerokości obszaru widoku (4% z niej) |
| Funkcja | clamp(1rem, 4vw, 2rem) | Płynnie między minimum a maksimum |
Wpisz wartość i zobacz rozmiar obliczony przez przeglądarkę:
Wypróbuj 20px, 2em, 150%, x-large, smaller i 5vw. Niepoprawna wartość, na przykład big, jest ignorowana, a tekst zachowuje ostatni poprawny rozmiar.
rem a em: różnica, która potrafi zaskoczyć
rem zawsze patrzy na element główny, więc 1.2rem ma ten sam rozmiar, gdziekolwiek się pojawi. em patrzy na rodzica, więc przy zagnieżdżaniu elementów rozmiary się mnożą:
Najbardziej wewnętrzne pudełko em ma 16 × 1.2 × 1.2 × 1.2 = 27.648px. Najbardziej wewnętrzne pudełko rem wciąż ma 19.2px. To mnożenie przydaje się w komponencie, którego części mają skalować się razem, a wszędzie indziej jest niespodzianką. Wszystkie jednostki długości porównuje strona o jednostkach.
Słowa kluczowe: od xx-small do xx-large
Bezwzględne słowa kluczowe odpowiadają stałej skali wokół medium, które jest równe domyślnemu rozmiarowi użytkownika (16px, chyba że go zmienił):
Przy domyślnych 16px small to 13px, large to 18px, x-large to 24px, a xx-large to 32px. Słowa kluczowe wystarczą do szybkiej pracy, ale system projektowy zwykle potrzebuje własnej skali w rem.
Płynny rozmiar czcionki z clamp()
Nagłówek, który ma rosnąć razem z ekranem, ale nigdy nie być za mały ani za duży, to jedno wywołanie clamp(): minimum, preferowany rozmiar, który się skaluje, i maksimum.
W podglądzie o szerokości 800px 5vw to 40px, co mieści się między 24px a 48px, więc ta wartość wygrywa. Płynną typografię szczegółowo omawia strona o clamp.
Rozmiar bazowy dla całej strony
Ustaw rozmiar raz na body (albo html), a wszystko inne ustawiaj względem niego:
html { font-size: 100%; } /* respects the user's setting, usually 16px */
body { font-size: 1rem; }
h1 { font-size: 2.25rem; }
small, .caption { font-size: 0.875rem; }
Unikaj sztuczek z html { font-size: 62.5%; }, chyba że potem każdy rozmiar na stronie ustawiasz w rem, i nigdy nie ustawiaj stałego rozmiaru w px na html: nadpisuje on rozmiar czcionki wybrany przez czytelnika w przeglądarce, od którego niektórzy zależą, żeby w ogóle móc czytać.
Uwagi o dostępności
- Tekst główny o rozmiarze 16px lub większym to dobre minimum do czytania na ekranie.
- Rozmiary w
remiempodążają za domyślnym ustawieniem czcionki użytkownika. Rozmiary wpxpodążają za powiększeniem strony, ale nie za tym ustawieniem. - Na iPhonie Safari powiększa stronę, gdy aktywujesz pole z rozmiarem czcionki poniżej 16px. Nadaj polom formularza
font-size: 1remlub więcej, żeby tego uniknąć.
Częste błędy
- Używanie znacznika
<font>. Jest przestarzały. Użyj właściwościfont-size. - Zagnieżdżone rozmiary w
em, które rosną albo maleją bez kontroli. Używajrem, chyba że chcesz mnożenia. - Stały rozmiar w
pxnahtml. Nadpisuje własne ustawienie czcionki czytelnika. - Zapominanie, że nagłówki mają już rozmiar.
<h1>ma domyślnie2em, więc potrzebujeszh1 { font-size: 1em; }, jeśli ma mieć rozmiar tekstu głównego. - Same jednostki obszaru widoku.
font-size: 3vwstaje się nieczytelne na telefonie i ogromne na szerokim monitorze. Umieść to wclamp().
Najczęściej zadawane pytania
Jak zmienić rozmiar czcionki w CSS?
Ustaw na elemencie właściwość font-size: p { font-size: 18px; }. Przyjmuje długości (px, rem, em), procenty i słowa kluczowe, takie jak large.
Jak zmienić rozmiar czcionki w HTML?
Za pomocą CSS, w arkuszu stylów albo w atrybucie style: <p style="font-size: 20px;">. Stary znacznik <font size="5"> jest w HTML5 przestarzały i nie należy go używać.
Jaki jest domyślny rozmiar czcionki w przeglądarkach?
16px dla tekstu body, chyba że użytkownik zmienił go w ustawieniach przeglądarki. Tyle domyślnie wynoszą 1rem i słowo kluczowe medium.
Używać px, em czy rem do rozmiaru czcionki?
Do większości tekstu używaj rem: skaluje się z ustawieniem czcionki w przeglądarce użytkownika i nie mnoży się. Używaj em, gdy rozmiar ma podążać za rodzicem, na przykład dla ikony w przycisku. px nie podąża za domyślnym rozmiarem czcionki ustawionym przez czytelnika w przeglądarce, więc unikaj go dla tekstu głównego.
Dlaczego mój rozmiar czcionki w em ciągle rośnie?
Bo em jest względne wobec rozmiaru czcionki rodzica, więc zagnieżdżone elementy się mnożą: 1.2em wewnątrz 1.2em to 1.44 raza rozmiar bazowy. Przejdź na rem, które zawsze jest względne wobec elementu głównego.