“position: absolute;” Olan Bir Nesneyi Yatayda Ortalama

Sabit konumlandırdığınız(position: absolute) bir nesnenin yatayda ortalanmasını istiyorsanız margin-left:-(nesnenin genişliğinin yarısı) vermeniz yeterlidir.

Örnek 100px genişliğinde bir img var elimizde. O zaman kodumuz aşağıdaki gibi olacaktır.

.img1 {
position: absolute;top: 30px;
left: 50%;
margin-left: -50px;
}

13 thoughts on ““position: absolute;” Olan Bir Nesneyi Yatayda Ortalama

  1. HMERT
    HMERT says:

    position absolute yapmak için önce o elementin dışındaki elemeti relative yaptığımızı da unutmayalım.

    Yanıtla
  2. Murat BEŞER
    Murat BEŞER says:

    bunun çok benzeri bir zımbırtıyı vertical (dikey) ortalama için IE de kullanabiliriz.
    Şahsen şu an çalıştığım şirkette istemeye istemeye yazdığım frontend kodlaması ile öğrendim.

    bir backend developer olarak frontend ile uğraşmak gerçekten can sıkıntısı…

    Yanıtla
  3. Harun Memiş
    Harun Memiş says:

    Genişliği belli olan bir nesneyi : “margin:0 auto” yaparak zaten basit bir şekilde ortalayabiliyoruz diye biliyorum. Hangisi daha avantajlı veya bu sadece bir alternatif mi oldu bize şimdi 🙂

    Yanıtla
  4. Gözde Berberoğlu
    Gözde Berberoğlu says:

    @Harun Memiş “position: absolute” belirlediğiniz div’e herhangi bir tanımlama yapmazsanız sayfanızın soluna dayanacaktır. Yukarıdaki kod bunu engellemek için yazılmıştır.
    Herhangi bir position belirlemesi yapmaya ihtiyacınız yoksa söylediğiniz gibi genişliği belli olan dive “margin:0 auto” tanımlaması yapmanız yatayda ortalamak için yeterlidir.

    Yanıtla
  5. Sercan Paspal
    Sercan Paspal says:

    left:50% dediğimiz zaman ortalanır ama div boyutunu yokken 🙂 Div boyu buyudukce sağa doğru kayar ve hiç hoş bi görüntü olmaz. Çünkü siz soldan %50 verdiginizde divin sol kenarı tam ortada olur eğer div 100px ise divin diger ucu orta noktadan 100px sağda olur. Buda pek ortalanmış gibi olmaz, ama belki 20 – 30px lik divlerde pek anlaşılamayabilir.

    Yanıtla
  6. Gözde Berberoğlu
    Gözde Berberoğlu says:

    @Sercan Örnekte de belirttiğim gibi 100px’lik bir diviniz varsa, margin-left:-50px vererek kutuyu kendi genişliğinin yarısı kadar sola çekip tam ortalamış olursunuz.

    Yanıtla
  7. Sercan paspal
    Sercan paspal says:

    @gozde haklisiniz margini gormedim ben orda pardon, guzel bi yontem olmus saolun

    Yanıtla

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir