Web Deneyimleri

CSS ve XHTML ağırlıklı olarak Web Tasarımı ve Trendleri
üzerine paylaşımlar

Position: Relative ve Position: Absolute’u Beraber Kullanmak

Yazar: Volkan Görgülü | Yayın Tarihi: 25 Eylül 2008 | Yorumlar: 33 Yorum
Kategori: CSS & XHTML

Arkadaşlar size hemen şu soruyu sormak istiyorum, aşağıdaki kutunun sağ üst, sağ alt ve sol alt köşelerinde bulunan bağlantıları kodlarken, nasıl bir yöntem kullanırsınız?

Örnek bir resim

XHTML Kısmından Bahsetmiyorum

Başlık ve paragraf kendini belli ediyor zaten, arkadaşlarınla paylaş, düşüncelerini paylaş ve
favorilerine ekle bağlantıları için kullandığım etiketleri de aşağıdaki resimde belirttim.

Örnek bir resim

CSS Kısmına Gelelim

İzin verirseniz sorumu güncelleyim, üç bağlantıyı kutunun köşelerine almak için CSS’in hangi özelliklerini kullanırdınız?

Float Özelliği?

Float özelliğini kullanabilirim ama aşağıdaki resimde görüldüğü gibi bağlantılar div‘deki padding değerinden etkilenecekleri için köşelere yapışık olmazlardı.

Örnek bir resim

Tamam belki bir takım ekstra çözümler üreterek float kullanabiliriz ama emin olun bunlara hiç gerek yok. Ayrıca aşağıda bulunan resimdeki gibi kutuların yüksekliğinin sabit olduğu bir durum düşünürsek, aşağıdaki resimde görüldüğü gibi bu bağlantılar yazının kısa olduğu durumlarda, alt sınırdan daha uzak, yazının uzun olduğu durumlarda ise alt sınıra daha yakın olacaklardır.

Örnek bir resim

Çözüm: Position Relative ve Position Absolute

CSS’in position özellikleri genelde çok kullanılan özellikler değil ve bir şekilde gizemli geliyor yeni başlayan arkadaşlara ya da bir şekilde kavranamıyorlar. Ama inanın bana çok basitler. Ve bende bu tip örnekli paylaşımlar ile bu konuda sizleri aydınlatmayı planlıyorum.

position: absolute ile birlikte top, bottom, left ve right özelliklerini kullanarak herhangi bir öğeyi sayfanın istediğimiz yerine yerleştirebiliyoruz.

Zaten Absolute kelimesinin türkçe karşılığıda kesin ve net anlamlarına geliyor. Relative kelimesi ise bağlı ya da ilişkili anlamına geliyor.

Öyleyse ben position:absolute değerini kullanarak istediğim öğreyi istediğim yere yerleştirebiliyorsam bu özelliği kutunun içindeki bağlantılar içinde kullanabilirim.

Ama işte burada bir püf noktası var! Belki siz de daha önce absolute değerini kullanarak yapmaya çalıştınız ama olmadı.

Aslında tüm mesele, resimde gördüğünüz gibi, position: absolute değerine sahip bağlantıları kapsayan, div etiketinede position: relative değerini vererek bağlantılar ile div‘i ilişkilendirmek.

Örnek bir resim

Yani diğer bir deyişle bağlantıların position: absolute ve top, left,bottom, right değerleri için sayfa genelini değilde içinde bulundukları div‘i baz almalarını sağlıyoruz.

Sizde denemeler yapmak için, bu paylaşımda kullandığım örneği bu bağlantıyı kullanarak bilgisayarınıza indirebilirsiniz.

Özellikle denemenizi istediğim nokta div etiketinden position: relative değerini kaldırmanız.

Güncellendi (26 Eylül 2008)

Ayrıca bu konu ve z-index ile ilgili Salih S. Demir’in blogunda yaptığı paylaşımıda incelemenizi tavsiye ederim.

Umarım

Faydalı bir paylaşım olmuştur, sizlerde bu tekniğin kullanımlarına örnekler gösterebilirsiniz ya da düşüncelerinizi paylaşabilirsiniz, position konusuna genel olarak değinmektense bu şekilde birebir örnekler vererek değinmek istedim, daha faydalı olacağını düşündüm.

Web Deneyimleri’ni Takip Edin

Arkadaşlar önümüzdeki günlerde çok daha kaliteli paylaşımlar, etkinlikler ve organizasyonlar sizleri bekliyor, başlıkta da dediğim gibi Web Deneyimleri’ni takip etmeye devam edin.

Takip etmek içinde RSS, Twitter ya da FriendFeed yayınlarımı kullanabilirsiniz.

Bir sonraki paylaşımda görüşmek üzere, kendinize çok iyi bakın.

Başka bir paylaşımımı inceleyebilirsiniz

« Büyük Çekiliş

JPG’i PNG 24 ile ve GIF’i PNG 8 ile dövüştürüyorum »

Yazıya Gelen Yorumlar

1

Halil Gökdal
25 Eylül 2008´de söylemiş


Bilmeyen arkadaşlar için çok iyi bir örnek.
Tebrikler @volkangorgulu. Paylaşımlara devam.

2

fatihturan
25 Eylül 2008´de söylemiş


Evet bence de bu relative/absolute tekniği bilmeyen arkadaşlar için yararlı bir yazı.

3

Volkan Görgülü
25 Eylül 2008´de söylemiş


Teşekkürler arkadaşlar :)

4

Simto Alev
25 Eylül 2008´de söylemiş


Ohoh.. Çok süper olmuş bu. Position olayını bir türlü anlamıyordum…

5

Pisho
25 Eylül 2008´de söylemiş


Çok az kodlama bilgimle herbirşeyini anladım.. Kendimce denemeye çalışacağım.. Bu tarz paylaşımlarınızın sürmesini bekliyoruz, elimiz RSS de :P

6

Cihan ÖNER
25 Eylül 2008´de söylemiş


Volkan hocam çok etkili paylaşımlarda bulunuyorsun bu da güzel olmuş teşekkür ederiz..

Ben açtığım tüm Div elementlerine position:relative veriyorum. Açıkcası relative tam olarak ne işe yarıyor bilmiyorum ama diğer position özelliklerine göre gözlemlediğim tek farkı Browser penceresi kücülünce yazılar ve sayfa elemanları iç içe geçmiyor ki bu özellik diğer position uygulamaların da aksi şekilde işliyor. Aslında position etiketlerini nerede nasıl kullanacağımıza dair ufak bir paylaşımda bulunsan güzel olur ve çok makbule geçer sayın hocam..

Saygılar

7

Karbonizma
25 Eylül 2008´de söylemiş


Bir kaç dakika sonra bu konu hakında size e-posta olarak soru soracaktım ama sorumun cevabı bu paylaşımda var :) Teşekkür ederim.

8

ercani
25 Eylül 2008´de söylemiş


Ama position:absolute niteliği kutu modelindeki akış sırasından çıkmasını sağlıyor. Yani artık yanındaki kutulardan etkilenmiyor. O zamanda ekran çözünürlüğüne göre farklı yerde gösteriyor. Çözünürlük arttıkça kayıyor, yani benim bildiğim öyle. Ona bir çare var mı?

9

Salih S. DEMİR
25 Eylül 2008´de söylemiş


@ercani

absolute edilecek katmanın altındaki katman, yani absolute un sınırlarını belirleyecek katmana “position: relative” veririz.

10

Tufan Tunç
25 Eylül 2008´de söylemiş


div ile yapılan tasarımın kalbine giden yol, paylaştığın için teşekkürler.

11

Fatih
25 Eylül 2008´de söylemiş


Güzel bir makale olumuş. Çok kullanışlı bir teknik bence. Bir çok yerde kullanılabilir.

12

Ufuk KURT
25 Eylül 2008´de söylemiş


Hmm gerçekten güzeL bi anlatım olmuş
Teşekkürler Volkan

13

Web Öğrencisi
25 Eylül 2008´de söylemiş


Gerçekten yararlı bi bilgi oldu (: Teşekkürler. Ellerine sağlık.

14

Burak
25 Eylül 2008´de söylemiş


Teşekkürler.Çok güzel paylaşımlar bunlar :)

15

Volkan Görgülü
25 Eylül 2008´de söylemiş


@Cihan Öner, konuyu böyle örnekler ile anlatmayı tercih ettim, positionlar ile ilgili kullanımlar ürettikçe ya da gördükçe yine paylaşımda bulunacağım.

@Ercani, zaten paylaşımda bahsettiğin konunun olmasını engelleyen teknikten bahsediyorum.

Faydalı olduysa ne mutlu bana, teşekkürler arkadaşlar :)

16

Harun YAŞAR
25 Eylül 2008´de söylemiş


Herhalde okuduğum ve yararlandığım en açık ve öz kaynak bu oldu benim için positioning konusunda. Ellerine sağlık Volkan.

Diğer paylaşımlarında da başarılar diliyorum.

17

Barış Aydın
25 Eylül 2008´de söylemiş


çok teşekkürler volkan abi bir türlü yapamıyordum sayende püf noktasını öğrenmiş olduk

18

Salih S. DEMİR
25 Eylül 2008´de söylemiş


Bende z-index ile beraber yeniden değindim bu konuya Volkan Görgülü isterseniz blogumdaki resimleri kullanabilirsiniz, hazır çizilmiş :)

19

Volkan Görgülü
26 Eylül 2008´de söylemiş


@Harun, @Barış, çok mutlu oldum

@Salih, ben de paylaşımı mı güncelledim ve senin paylaşımına bağlantı verdim. Güzel paylaşım ellerine sağlık.

20

Başar Özcan
26 Eylül 2008´de söylemiş


benim gibi bilgi eksiği olan arkadaşlara ilaç gibi geldi. teşekkürler…

21

phys
30 Eylül 2008´de söylemiş


kafa karıştı :) ben şöyle biliyordum. denedim.

divA ve divB iki katmanımız olsun. divB divA nın içerisinde olsun.

divA katmanına position değeri atamadığımızda divB ye absolute değeri vermek Body ye veya sayfaya göre konumlandırır. divB ye relative değeri verirsek div A ya göre konumlandırmış oluruz. divB ye relative değeri vererek divA ile ilişkilendirmiş ve boby den kurtarmış oluruz divA liquid bir tasarımın içerisindeki bir katman olduğunda divA sayfa içerisinde nerede konumlanırsa divB ona göre konumlanmış olur.

doğrumu anlamışım?

Saygılar…

22

SerKanka
30 Eylül 2008´de söylemiş


Çalışmalarını beğeniyorum. Gayretin süper. position u görüyordum ancak şimdi ne olduğunu anlamış oldum. Ayrıca resimlerin açıklamalarda kullandığın fonta bayıldım. Aynen devam başarın eksik olmasın.

23

Sedat Kumcu
15 Ekim 2008´de söylemiş


Hay Allah razı olsun dostum. Gerçekten çok net bir anlatım olmuş. Eline sağlık, teşekkürler.

24

ilkay
29 Kasım 2008´de söylemiş


Ben de biraz önce intenetten indirdiğim css temaları incelerken bu özelliği farkettim. İlk defa karşılaştım ve bi kaç uygulama yaptım.

Kapsayıcı div için relative kullanmadan olmuyor. Sanırım kapsayıcı div relative(göreceli) olduğu zaman içindeki div’ler kapsayıcıya referans alarak konumlanıyor. İçerde absolute(mutlak) kullanıldığı zaman ise dıştaki div’e göre istenilen konumun koordinatları tam olarak verilebiliyor.
Position seçenekleri baya karışık aslında biraz daha deneme yapmak lazım.

25

slmsiz
06 Mayıs 2009´de söylemiş


Öncelikle slm,

Çok yararlı bir makale olmuş. Ellerinize sağlık.

İyi çalışmalar.

26

Löpürdek!
31 Mayıs 2009´de söylemiş


Teşekkürler, işime yaradı ;)

27

Alican
27 Temmuz 2009´de söylemiş


Teşekkürler,

28

herzevekil
30 Ağustos 2009´de söylemiş


Teşekkürler, ben de artık tablo kullanmadan wep sitesi geliştirmeye çalışıyordum. Ve position:absolute, position:relative leri bir türlü anlamıyordum, sağolun

29

herzevekil
30 Ağustos 2009´de söylemiş


Teşekkürler, işime yaradı.

30

amerikan kapı
28 Eylül 2009´de söylemiş


teşekkürler işime cok yaradı arkadaş saolasın gerçekten bilgilendiriyorsun bizi unutmadan siteni cok sevdim.

Geri İzlemeler

  1. Salih S. DEMİR - CSS de position: absolute, position: relative ve z-index kullanımı
  2. renkli teneke » Renkli Arşiv » İnternet Çöplüğünden Seçmeler #1
  3. Position: Relative ve Position: Absolute’u Beraber Kullanmak | KMC

Düşüncelerinizi duymaya ihtiyacım var!

Zamanınızın çok küçük bir bölümünü ayırarak, bu form aracılığı ile yazı hakkındaki düşüncelerinizi paylaşabilirsiniz.

Yorum yazarken kullanabileceğiniz XHTML etiketlerini görmek istermisiniz?

Aşağıdaki XHTML etiketlerini kullanabilirsiniz:
<a href="" title=""></a>
<abbr title=""></abbr>
<acronym title=""></acronym>
<b></b>
<blockquote cite=""></blockquote>
<cite></cite>
<code></code>
<del datetime=""></del>
<em></em>
<i></i>
<q cite=""></q>
<strike></strike>
<strong></strong>