HTML / CSS ile, genişliğinin ve / veya yüksekliğinin üst öğesinin% 100'ü olan ve yine de uygun dolgu veya kenar boşluklarına sahip bir öğeyi nasıl yapabilirim?
"Uygun" ile ifade etmek gerekirse, eğer ana öğem 200px
uzunsa ve height = 100%
birlikte belirtirsem , her iki tarafta da güzel bir şekilde ana öğeye ortalanmış yüksek bir eleman padding = 5px
almamı beklerdim .190px
border = 5px
Şimdi, standart kutu modelinin nasıl çalışacağını belirtmediğini biliyorum (nedenini tam olarak bilmek istiyorum ...), bu yüzden açık cevap işe yaramıyor:
#myDiv {
width: 100%
height: 100%;
padding: 5px;
}
Ama bana öyle geliyor ki, keyfi büyüklükteki bir ebeveyn için bu etkiyi güvenilir bir şekilde üretmenin BAZI bir yolu olmalı. Herkes bu (görünüşte basit) görevi yerine getirmenin bir yolunu biliyor mu?
Oh, ve kayıt için IE uyumluluğu ile çok ilgilenmiyorum, bu yüzden (umarım) işleri biraz daha kolay hale getirmelidir.
EDIT: Bir örnek istendiğinden, aklıma gelen en basit örnek:
<html style="height: 100%">
<body style="height: 100%">
<div style="background-color: black; height: 100%; padding: 25px"></div>
</body>
</html>
Buradaki zorluk, kara kutunun, sayfa kaydırma çubukları gerektirecek kadar büyüymeden tüm kenarlarında 25 piksel dolgu ile görünmesini sağlamaktır.