Menu

CSS Yazı Boyutu (font-size): px, rem, em ve Örnekler

font-size özelliği metnin ne kadar büyük olacağını ayarlar. Aldığı birimleri (px, rem, em, %, anahtar kelimeler, vw), HTML'de yazı boyutunun nasıl değiştirildiğini, rem'in neden güvenli varsayılan olduğunu ve em boyutlarının nasıl katlandığını öğren.

Bu sayfada çalıştırılabilir editörler var - düzenle, çalıştır ve sonucu anında gör.

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ÖrnekNeye göre
px16pxHiçbir şeye: sabit bir boyut
rem1.25remKök <html> elementinin yazı boyutuna (varsayılan 16px)
em1.2emEbeveyn elementin yazı boyutuna
%120%em gibi ebeveynin yazı boyutuna (120%, 1.2em demektir)
Anahtar kelimelargeVarsayılan medium çevresinde hazır bir ölçek
Göreli anahtar kelimesmaller, largerEbeveynin boyutundan bir adım
Viewport4vwViewport genişliğine (onun %4'ü)
Fonksiyonclamp(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.
  • rem ve em cinsinden boyutlar kullanıcının varsayılan yazı tipi ayarını takip eder. px cinsinden 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: 1rem ya 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 em boyutları. Katlanma istemiyorsan rem kullan.
  • html üzerinde sabit bir px boyutu. Okuyucunun kendi yazı tipi ayarını ezer.
  • Başlıkların zaten bir boyutu olduğunu unutmak. <h1> varsayılan olarak 2em'dir, bu yüzden gövde metni boyutunda olmasını istiyorsan h1 { font-size: 1em; } gerekir.
  • Tek başına viewport birimleri. font-size: 3vw telefonda okunmaz, geniş bir monitörde ise devasa olur. Onu clamp() 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ç.

Coddy programming languages illustration

Coddy ile kodlamayı öğren

BAŞLA