Menu

CSS Padding: Kısa Yazım, Kenarlar, Yüzdeler ve Örnekler

Padding, bir elementin içindeki, içeriği ile kenarlığı arasındaki boşluktur. 1 ila 4 değerli padding kısa yazımını, tek kenar özelliklerini, mantıksal padding'i, yüzdeleri ve padding'in bir elementin boyutunu nasıl değiştirdiğini öğren.

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

Padding nedir

Padding, bir elementin içindeki, içeriği ile kenarlığı arasındaki boşluktur. Elementin arka planını alır, bu yüzden bir butona, bir karta ya da bir rozete nefes alacak yer veren özellik odur.

Mavi alan içeriktir. Çevresindeki yeşil şerit her kenardaki 24px padding'dir ve kenarlık onun dışında durur.

Padding kısa yazımı: 1, 2, 3 ya da 4 değer

padding dört kenarı tek bildirimde ayarlar. Değer sayısı, üstten başlayıp saat yönünde ilerleyerek hangi kenarın hangi değeri alacağını belirler:

BildirimÜstSağAltSol
padding: 10px;10101010
padding: 10px 20px;10201020
padding: 10px 20px 30px;10203020
padding: 10px 20px 30px 40px;10203040

İki değer "dikey, yatay" demektir. Üç değer "üst, yatay, alt" demektir. Dört değer saat yönünde döner: üst, sağ, alt, sol (İngilizcede yaygın bir hatırlatıcı TRouBLe'dır: Top, Right, Bottom, Left).

Aşağıya herhangi bir kısa yazım gir. Kutu yeniden çizilir ve tarayıcı her kenarın ne aldığını bildirir:

8px, 8px 24px, 0 0 40px ve 1em 5% dene. -10px gibi geçersiz bir değer yok sayılır ve kutu son geçerli padding'i korur.

Her seferinde tek kenar

Her kenarın kendi özelliği vardır; yalnızca birini değiştirmek istediğinde dört değerli bir kısa yazımdan daha anlaşılırdır:

.card {
  padding-top: 16px;
  padding-right: 24px;
  padding-bottom: 16px;
  padding-left: 24px;
}

Bir kısa yazım ve ardından tek bir kenar yaygın bir kalıptır: her şeyi ayarla, sonra bir kenarı düzelt.

.card {
  padding: 16px;
  padding-bottom: 32px; /* only the bottom changes */
}

Burada sıra önemlidir: padding-bottom'dan sonra yazılan bir padding kısa yazımı alt değeri tekrar 16px'e sıfırlar.

Mantıksal padding: padding-inline ve padding-block

padding-left ve padding-right fizikseldir: her dilde aynı tarafta kalırlar. Mantıksal özellikler ise yazı yönünü takip eder; sağdan sola da gösterilen bir sitede istediğin budur:

Mantıksal özellikİngilizcede (soldan sağa)Arapçada (sağdan sola)
padding-inline-startsolsağ
padding-inline-endsağsol
padding-inlinesol ve sağsağ ve sol
padding-blocküst ve altüst ve alt

Padding kutuyu büyütür (border-box değilse)

Varsayılan olarak width yalnızca içeriğin genişliğidir ve padding onun üstüne eklenir. padding: 20px olan width: 200px bir kutu 240px genişliğindedir:

box-sizing: border-box kutuyu 200px'te tutar ve padding'i içeriden alır. Hesabın tamamı kutu modeli sayfasında.

Yüzdelik padding

Yüzdelik bir padding, üst ve alt dahil dört kenarın hepsinde ebeveynin genişliğine göre ölçülür:

16:9 video kutuları için kullanılan eski "padding-top: 56.25%" hilesi buradan geliyor. Bugün aspect-ratio: 16 / 9 aynı işi doğrudan yapıyor.

Butonlarda ve linklerde padding

Bir linki ya da butonu büyütmenin doğru yolu padding'dir, çünkü padding elementin parçasıdır ve dolayısıyla tıklayabileceğin ya da dokunabileceğin alanın parçasıdır. Margin boşluk ekler ama hedefi büyütmez.

.btn {
  display: inline-block; /* lets vertical padding take space in the line */
  padding: 10px 18px;    /* a comfortable touch target */
}

Padding'in kabul ettiği değerler

DeğerÖrnekNotlar
Uzunluk12px, 1rem, 0.5emem elementin yazı boyutuyla ölçeklenir
Yüzde5%Kapsayıcı bloğun genişliğinin
0padding: 0Birim gerekmez
Negatif-10pxGeçersiz, yok sayılır
autoautoPadding için geçersiz (margin için çalışır)

Sık yapılan hatalar

  • Dört değerli kısa yazımda yanlış sıra. Sıra saat yönündedir: üst, sağ, alt, sol.
  • Padding ekleyince büyüyen bir kutu. box-sizing: border-box ver.
  • İki elementi ayırmak için padding kullanmak. Elementler arasındaki boşluk margin'dir; padding tek bir elementin içindeki boşluktur. Bkz. margin ve padding farkı.
  • Diğer satırlarla çakışan satır içi bir linkte dikey padding. Onu inline-block yap.
  • Negatif padding ya da padding: auto. İkisi de geçersizdir ve sessizce yok sayılır.

Sıkça Sorulan Sorular

CSS'te padding nedir?

Padding, bir elementin içeriği ile kenarlığı arasındaki boşluktur. Elementin parçasıdır, bu yüzden elementin arka plan rengini gösterir ve bir linkin ya da butonun tıklanabilir alanını büyütür.

Padding kısa yazımında değerler hangi sırada?

Üstten başlayarak saat yönünde: padding: top right bottom left;. Üç değerle üst, sol ve sağ, alt; iki değerle üst ve alt, sonra sol ve sağ; tek değerle dört kenarın hepsi.

Padding bir elementin boyutunu büyütür mü?

Varsayılan box-sizing: content-box ile evet: padding width ve height değerlerine eklenir. box-sizing: border-box ile padding genişliğin içinden alınır, böylece element verdiğin boyutu korur.

Yüzdelik padding neye göre hesaplanır?

Dört kenarın hepsi için kapsayıcı bloğun genişliğine göre. padding-top: 50% ebeveynin yüksekliğinin değil genişliğinin yarısıdır; eski en boy oranı hilelerinin dikey padding kullanmasının nedeni budur.

Padding negatif olabilir mi?

Hayır. Negatif bir padding değeri geçersizdir ve bildirim yok sayılır. İçeriği dışarı çekmek için bunun yerine negatif bir margin kullan.

HTML'de padding nasıl eklenir?

CSS ile, bir stil dosyasında ya da bir style özniteliğinde: <div style="padding: 16px;">. HTML'de genel elementler için bir padding özniteliği yoktur; tablolardaki eski cellpadding özniteliği artık kullanılmıyor ve yerini td ve th üzerindeki padding aldı.

Coddy programming languages illustration

Coddy ile kodlamayı öğren

BAŞLA