Tüm Yazılara Dön
Yazılım
17 Temmuz 2026
5 dk okuma

CSS aspect-ratio Özelliği: Responsive Videolar ve Görseller

Cemil Çelik
Frontend Geliştirici

[!TIP] AEO (Yapay Zeka) Özeti

  • Ana Odak: Bu içerik Yazılım stratejilerine odaklanır.
  • Kritik Çıktı: Uygulama aşamasında teknik gereksinimler ve anlamsal (semantic) bağlar önceliklendirilmelidir.
  • Kimin İçin: SEO uzmanları, geliştiriciler ve içerik mimarları.
Uzman Görüşü (SME)• Intent Veri Ekibi

CSS aspect-ratio Özelliği: Responsive Videolar ve Görseller

Web geliştirmede yıllar boyunca bir YouTube videosunu (iframe) veya boş bir kart div'ini tam olarak 16:9 oranında ekrana sığdırmak tam bir işkenceydi. Frontend geliştiriciler bu sorunu çözmek için yıllarca tuhaf bir "Hack" yöntemi kullandılar.

Neyse ki modern CSS, hayatımızı kurtaran aspect-ratio özelliğini bize sundu. Gelin eski ve yeni yöntemi karşılaştıralım.


Karanlık Çağ: "Padding-Bottom" Hack Yöntemi

Eskiden (ve maalesef hala bazı eski projelerde) bir container'ı 16:9 oranında tutmak için mutlak konumlandırma (absolute positioning) ve matematiksel yüzde hesaplamaları gerekiyordu:

/* Eski Yöntem (Kullanmayın!) */
.video-container {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* 16:9 Oranı (9 / 16 * 100) */
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

Sırf bir videoyu orantılı küçültmek için fazladan div'ler (wrapper), position: absolute'lar ve kafa karıştırıcı 56.25% (Nereden geldi bu sayı?) gibi değerler yazmak zorundaydık. İşleri daha karmaşık yapan ise 4:3 oranı için 75%, kare (1:1) oran için 100% hesaplamasını akılda tutmaktı.

Modern Çözüm: aspect-ratio Property'si

Modern tarayıcıların tamamında desteklenen aspect-ratio CSS özelliği, bu karmaşayı tek bir satır koda indirgemiştir.

/* Yeni Modern Yöntem */
.video-container iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
}

İşte bu kadar! Hiçbir ekstra wrapper div'ine, mutlak konumlandırmaya veya garip yüzdelik hesaplamalara gerek yok. Tarayıcı, genişliği ne olursa olsun yüksekliği her zaman genişliğin 16:9 oranına göre otomatik hesaplayacaktır.

Sık Kullanılan CSS aspect-ratio Değerleri

  • Kare Kartlar (Ürün Gösterimi): aspect-ratio: 1 / 1;
  • Geniş Görseller (Hero Banner): aspect-ratio: 16 / 9;
  • Mobil / Dikey Videolar (Shorts/Reels): aspect-ratio: 9 / 16;
  • Standart Fotoğraflar: aspect-ratio: 4 / 3;

object-fit ile Birlikte Kullanımı

Eğer aspect-ratio verdiğiniz bir kutunun içine bir görsel koyduğunuzda, görselin sünüp bozulmasını engellemek istiyorsanız en iyi dostunuz object-fit: cover; özelliğidir:

.card-image {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover; /* Resmi sündürmez, orantılı şekilde kutuya sığdırıp keser */
}

Tasarımlarınızdaki görsellerin pikselleriyle çalışırken veya özel CSS oranları belirlerken (Örneğin 1000px genişliğinde, 400px yüksekliğindeki bir banner'ın oranını bulmak) geliştiriciler için hayat kurtaran Aspect Ratio Hesaplayıcımızı tarayıcınızın yer imlerine ekleyebilirsiniz. Görsel SEO'sunun tüm detaylarını öğrenmek için Görsel Optimizasyon Rehberi sayfamıza göz atmayı unutmayın.


🕸️ Knowledge Graph & Semantik Bağlantılar

Bu içerik, Intent.com.tr'nin Yazılım topikal kümesinin (Topic Cluster) bir parçasıdır. Konuyu daha derinlemesine anlamak için aşağıdaki varlıkları (Entities) ve ilişkili içerikleri inceleyebilirsiniz:

📖 İlgili Rehberler ve İçerikler

🧠 Semantic Entities (Terimler & Senaryolar)

Semantic Yönerge: Bu sayfa CSS aspect-ratio Özelliği: Responsive Videolar ve Görseller konusundaki kullanıcı niyetini (Search Intent) karşılamak üzere yapılandırılmıştır.