CSS'te yazı boyutu nasıl ayarlanır
font-size özelliği metnin boyutunu ayarlar. Onu herhangi bir elemente ver, içindeki her metin parçası, bir çocuk kendi boyutunu ayarlamadıkça bu boyutu miras alır.
HTML'de yazı boyutunu değiştirmek için de CSS kullanırsın. Bir style özniteliği (<p style="font-size: 20px;">) ya da stil dosyasına bir kural ekle. 1990'lardan kalma <font size="5"> etiketi kullanımdan kalkmıştır ve modern bir sayfada yeri yoktur.
font-size'ın kabul ettiği birimler
| Değer | Örnek | Neye göre |
|---|---|---|
px | 16px | Hiçbir şeye: sabit bir boyut |
rem | 1.25rem | Kök <html> elementinin yazı boyutuna (varsayılan 16px) |
em | 1.2em | Ebeveyn elementin yazı boyutuna |
% | 120% | em gibi ebeveynin yazı boyutuna (120%, 1.2em demektir) |
| Anahtar kelime | large | Varsayılan medium çevresinde hazır bir ölçek |
| Göreli anahtar kelime | smaller, larger | Ebeveynin boyutundan bir adım |
| Viewport | 4vw | Viewport genişliğine (onun %4'ü) |
| Fonksiyon | clamp(1rem, 4vw, 2rem) | Bir minimum ile bir maksimum arasında akışkan |
Bir değer yaz ve tarayıcının hesapladığı boyutu gör:
20px, 2em, 150%, x-large, smaller ve 5vw dene. big gibi geçersiz bir değer yok sayılır ve metin son geçerli boyutunu korur.
rem ve em: can yakan fark
rem her zaman kök elemente bakar, bu yüzden 1.2rem nerede görünürse görünsün aynı boyuttadır. em ise ebeveyne bakar, bu yüzden elementler iç içe olduğunda boyutlar çarpılır:
En içteki em kutusu 16 × 1,2 × 1,2 × 1,2 = 27,648px. En içteki rem kutusu hâlâ 19,2px. Bu katlanma, parçaları birlikte ölçeklenmesi gereken bir bileşen için kullanışlı, diğer her yerde ise sürprizdir. Birimler sayfası bütün uzunluk birimlerini karşılaştırıyor.
Anahtar kelimeler: xx-small'dan xx-large'a
Mutlak anahtar kelimeler, kullanıcının varsayılan boyutuna (değiştirmediyse 16px) eşit olan medium çevresinde sabit bir ölçeğe karşılık gelir:
Varsayılan 16px ile small 13px, large 18px, x-large 24px ve xx-large 32px'tir. Anahtar kelimeler hızlı işler için yeterli, ama bir tasarım sistemi genellikle rem cinsinden kendi ölçeğini ister.
clamp() ile akışkan yazı boyutu
Ekranla birlikte büyümesi ama asla çok küçük ya da çok büyük olmaması gereken bir başlık tek bir clamp() çağrısıdır: minimum, ölçeklenen tercih edilen boyut ve maksimum.
800px genişliğindeki bir önizlemede 5vw 40px'tir; bu 24px ile 48px arasında kaldığı için kazanır. Akışkan yazı boyutunu clamp sayfası ayrıntılı anlatıyor.
Bütün sayfa için temel boyut ayarlamak
Boyutu bir kez body (ya da html) üzerinde ayarla ve diğer her şeyi ona göre boyutlandır:
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; }
Sayfadaki her boyut sonrasında rem ile verilmeyecekse html { font-size: 62.5%; } hilelerinden kaçın ve html üzerine asla sabit bir px boyutu verme: bu, okuyucunun tarayıcısında seçtiği yazı boyutunu ezer ve bazı insanlar okuyabilmek için buna güvenir.
Erişilebilirlik notları
- Ekranda okumak için 16px ya da daha büyük gövde metni iyi bir alt sınırdır.
remveemcinsinden boyutlar kullanıcının varsayılan yazı tipi ayarını takip eder.pxcinsinden boyutlar sayfa yakınlaştırmasını takip eder ama bu ayarı takip etmez.- iPhone'da Safari, yazı boyutu 16px'in altında olan bir input'a odaklandığında sayfayı yakınlaştırır. Bunu önlemek için form alanlarına
font-size: 1remya da daha fazlasını ver.
Sık yapılan hatalar
<font>etiketini kullanmak. Kullanımdan kalkmıştır.font-sizeözelliğini kullan.- Kontrolden çıkarak büyüyen ya da küçülen iç içe
emboyutları. Katlanma istemiyorsanremkullan. htmlüzerinde sabit birpxboyutu. Okuyucunun kendi yazı tipi ayarını ezer.- Başlıkların zaten bir boyutu olduğunu unutmak.
<h1>varsayılan olarak2em'dir, bu yüzden gövde metni boyutunda olmasını istiyorsanh1 { font-size: 1em; }gerekir. - Tek başına viewport birimleri.
font-size: 3vwtelefonda okunmaz, geniş bir monitörde ise devasa olur. Onuclamp()ile sar.
Sıkça Sorulan Sorular
CSS'te yazı boyutu nasıl değiştirilir?
Elemente font-size özelliğini ver: p { font-size: 18px; }. Uzunluklar (px, rem, em), yüzdeler ve large gibi anahtar kelimeler kabul eder.
HTML'de yazı boyutu nasıl değiştirilir?
CSS ile, ya bir stil dosyasında ya da bir style özniteliğinde: <p style="font-size: 20px;">. Eski <font size="5"> etiketi HTML5'te kullanımdan kalkmıştır ve kullanılmamalıdır.
Tarayıcılarda varsayılan yazı boyutu nedir?
Kullanıcı tarayıcı ayarlarında değiştirmediyse gövde metni için 16px. 1rem ve medium anahtar kelimesi varsayılan olarak bu değere eşittir.
Yazı boyutu için px mi, em mi, rem mi kullanmalıyım?
Metnin çoğu için rem kullan: kullanıcının tarayıcıdaki yazı tipi ayarıyla ölçeklenir ve katlanmaz. Bir boyutun ebeveynini takip etmesi gerektiğinde, örneğin bir butonun içindeki ikon için em kullan. px, okuyucunun tarayıcıda ayarladığı varsayılan yazı boyutunu takip etmez, bu yüzden gövde metninde ondan kaçın.
em yazı boyutum neden sürekli büyüyor?
Çünkü em ebeveynin yazı boyutuna göredir, bu yüzden iç içe elementler çarpılır: 1.2em içindeki 1.2em, tabanın 1,44 katıdır. Her zaman kök elemente göre olan rem'e geç.