Sayfa ekrandan daha büyük olduğunda bir div ekranın ortasına nasıl konumlandırılır
Merhaba, ekranın ortasında konumlandırılmış bir div elde etmek için aşağıdakine benzer bir şey kullanıyorum:
<style type="text/css">
#mydiv {
position:absolute;
top: 50%;
left: 50%;
width:30em;
height:18em;
margin-top: -9em; /*set to a negative number 1/2 of your height*/
margin-left: -15em; /*set to a negative number 1/2 of your width*/
border: 1px solid #ccc;
background-color: #f3f3f3;
}
</style>
<div id="mydiv">Test Div</div>
Ancak bununla ilgili sorun, öğeyi ekranın değil sayfanın ortasına konumlandırmasıdır. Yani sayfa birkaç ekran yüksekliğindeyse ve ben sayfanın en üstündeysem (parçanın üst kısmı ekranda görüntülenir) div'in görünmesini sağladığımda ekranda bile görünmez. Görüntülemek için aşağı kaydırmanız gerekiyor.
Birisi bana ekranın ortasında görünmesini nasıl sağlayacağınızı söyleyebilir mi?
134
3
sadece
position:fixed
ekleyin ve aşağı kaydırsanız bile görünümde kalacaktır. [http://jsfiddle.net/XEUbc/1/][1] adresinde görebilirsinizAz önce bir test sayfasında tam olarak bu kodu test ettim ve div'i sayfaya mükemmel bir şekilde ortaladı, hatta önündeki yaklaşık 100
<br />
aşağı itmeye çalıştı.Belki de kodunuzun geri kalanını kontrol ederek DIV'in değerlerinin üzerine yazan ya da DIV'inizi etkileyerek bu sorunlara neden olan bir şey olup olmadığını kontrol etmeyi deneyin.
Bunun için ekran boyutunu tespit etmeniz gerekir. Bu CSS veya HTML ile mümkün değildir; JavaScript'e ihtiyacınız vardır. İşte pencere özellikleriyle ilgili Mozilla Geliştirici Merkezi girişi https://developer.mozilla.org/en/DOM/window#Properties
Mevcut yüksekliği tespit edin ve buna göre konumlandırın.