Aşağıdaki kullanarak css dikey bir hizalama oluşturmak üzerinde beyin rafa olmuştu
.base{
background-color:green;
width:200px;
height:200px;
overflow:auto;
position:relative;
}
.vert-align{
padding-top:50%;
height:50%;
}
<!-- and used the following div structure. -->
<div class="base">
<div class="vert-align">
Content Here
</div>
</div>
Bu durum bu işe yaramış gibi görünse de, temel div'imin genişliğini artırdığımda veya azalttığımda dikey hizalamanın yakalanacağına şaşırdım. Dolgu üst özelliğini ayarladığımda, dolguyu bizim durumumuzda temel olan ana kabın yüksekliğinin bir yüzdesi olarak alacağını bekliyordum, ancak yukarıdaki yüzde 50 değerinin, Genişlik. :(
JavaScript kullanmaya başvurmadan dolgu ve / veya kenar boşluğunu yüksekliğin yüzdesi olarak ayarlamanın bir yolu var mı?
top
tarayıcı / pencere yüksekliğine göre yeniden boyutlandırma için harika çalışıyor. Bu div'ın altında bir div olmasına ne dersiniz? Nasılclear
2. div bir aşağı kaydırılan div altında olmak içintop:50%
??