Dinamik araç çubuklarına sahip mobil görüntü alanlarını hesaba katan yeni CSS birimleri.
Görüntü alanı ve birimleri
Görüntü alanının yüksekliği kadar bir şeyi boyutlandırmak için vw
ve vh
birimlerini kullanabilirsiniz.
vw
= Görüntü alanı boyutunun genişliğinin% 1'i.vh
= Görüntü alanı boyutunun yüksekliğinin% 1'i.
Bir öğeye 100vw
genişliğinde ve 100vh
yüksekliğinde bir öğe girdiğinizde görüntü alanını tamamen kaplar.
vw
ve vh
birimleri, bu ek birimlere sahip tarayıcılara yönlendirildi
vi
= Görüntü alanının satır içi ekseninin boyutunun% 1'i.vb
= Görüntü alanının blok ekseninin boyutunun% 1'i.vmin
=vw
veyavh
değerinden daha küçüktür.vmax
=vw
veyavh
değerinden büyük olanıdır.
Bu birimler iyi bir tarayıcı desteğine sahiptir.
Tarayıcı Desteği
- 20
- 12
- 19
- 6
Yeni görüntü alanı birimlerine duyulan ihtiyaç
Mevcut birimler masaüstünde iyi performans gösterse de mobil cihazlarda farklı bir işleyiş şekli vardır. Görüntü alanı boyutu, dinamik araç çubuklarının varlığından veya olmamasından etkilenir. Bunlar, adres çubukları ve sekme çubukları gibi kullanıcı arayüzleridir.
Görüntü alanı boyutu değişebilir ancak vw
ve vh
boyutları değişmez. Sonuç olarak, yüksekliği 100vh
olacak şekilde boyutlandırılmış öğeler görüntü alanının dışına taşar.
Aşağı kaydırıldığında bu dinamik araç çubukları geri çekilir. Bu durumda, yüksekliği 100vh
olacak şekilde boyutlandırılmış öğeler görüntü alanının tamamını kaplar.
Bu sorunu çözmek için, CSS Çalışma Grubu'nda görünümün çeşitli durumları belirtilmiştir.
- Büyük görüntü alanı: Dinamik olarak genişletilen ve geri çekilmek üzere geri çekilen tüm UA arayüzlerinin boyutu olan görüntü alanı.
- Küçük Görünüm: Genişletilecek şekilde dinamik olarak genişletilen ve geri çekilen UA arayüzlerinin varsayıldığı boyuta sahip görüntü alanı.
Yeni görüntü alanlarına da birimler atanmıştır:
- Geniş görünümü temsil eden birimler
lv
önekine sahiptir. Birimler:lvw
,lvh
,lvi
,lvb
,lvmin
velvmax
. - Küçük görünümü temsil eden birimler
sv
önekine sahiptir. Birimler:svw
,svh
,svi
,svb
,svmin
vesvmax
.
Görüntü alanının kendisi yeniden boyutlandırılmadığı sürece, bu görüntü alanı yüzdesi birimlerinin boyutları sabittir (ve dolayısıyla sabittir).
Büyük ve küçük görüntü alanlarına ek olarak, UA kullanıcı arayüzünün dinamik olarak değerlendirildiği bir dinamik görüntü alanı da vardır:
- Dinamik araç çubukları genişletildiğinde, dinamik görüntü alanı, küçük görüntü alanının boyutuna eşit olur.
- Dinamik araç çubukları geri çekildiğinde, dinamik görüntü alanı, büyük görüntü alanının boyutuna eşit olur.
Eşlik eden birimler dv
önekine sahiptir: dvw
, dvh
, dvi
, dvb
, dvmin
ve dvmax
. Boyutları, lv*
ve sv*
eşdeğerleri arasında sabitlenir.
Bu birimler Chrome 108 sürümünde ve halihazırda desteklenen Safari ve Firefox ile birlikte gelir.
Tarayıcı Desteği
- 108
- 108
- 101
- 15,4
Uyarılar
Görüntü Alanı Birimleri hakkında bilinmesi gereken birkaç uyarı vardır:
Görüntü alanı birimlerinin hiçbiri, kaydırma çubuklarının boyutunu dikkate almaz. Bu nedenle, klasik kaydırma çubuklarının etkin olduğu sistemlerde boyutu
100vw
olan bir öğe biraz fazla geniş olur. Bu, spesifikasyona uygun olarak verilmiştir.Dinamik görüntü alanı değerleri 60 fps'de güncellenmez. Tüm tarayıcılarda, UA kullanıcı arayüzü genişledikçe veya geri çekilirken güncelleme kısıtlanır. Hatta bazı tarayıcılar, kullanılan harekete (yavaş kaydırma veya kaydırma) bağlı olarak güncellemeyi tamamen tersten açar.
Dokunmatik klavye (sanal klavye olarak da bilinir), UA kullanıcı arayüzünün bir parçası olarak kabul edilmez. Dolayısıyla, görüntü alanı birimlerinin boyutunu etkilemez. Chrome'da, sanal klavye kullanımının görüntü alanı birimlerini etkilediği bir davranışı etkinleştirebilirsiniz.
Ek kaynaklar
Görüntü alanları ve bu birimler hakkında daha fazla bilgi edinmek için HTTP 203'ün bu bölümüne bakın. Bu görselde Bramus Jake'e çeşitli görüntü alanları hakkında bilgi veriyor ve bu birimlerin boyutlarının tam olarak nasıl belirlendiğini açıklıyor.
Ek okuma materyali: