PDA

Tam Sürümünü Görmek İçin : dw de layer konumu


xXx
01/04/2003, 13:54
Dw de eklediğim layer sayfayı IE de görüntülediğimde pencere boyutu değişsede diğer nesnelerle beraber yer değiştirmiyor olduğu yerde çakılı kalıyor çaresi nedir?


fixman
01/04/2003, 14:26
Katmanların kullanım amacı zaten içine gömülen nesnelerin konum değiştirmemesi içindir.

Pencere boyutu ya da ekran çözünürlüğü değiştiğinde nesnenin konumunun değişmesi için tablo falan kullanmalısın...

Yok eğer "ben illa div konumunu değiştireceğim" diyorsan basit javascript kodları işini görür...

Not : "position : absolute" // Bu da küçük bir ipucu! Acaba nasıl değiştirmelisin bu ifadeyi? ;)

xXx
01/04/2003, 20:21
Biraz daha açabilirmisin ?

fixman
02/04/2003, 13:14
xXx...


<!-- Geliştiren : C. York // fixman@onebox.com -->

<div id="katman" style="position:absolute; z-index: 0; background: #000000; left: 100px; top: 100px; width: 350px; height: 20px; font-family: Verdana,Arial; font-size:10pt; color: #FFFFFF; text-align: center">Şuradan şuraya kıpırdamam, yaradılışım bööle!</div>

<p>
<a href="javascript:zorKullan(katman,200,200,0)" style="font-family:Verdana,Arial; font-size:10pt; color:#FF6600; text-decoration:none">[ Zor kullan! - Aşağı-Sağa(Tıklayın) ]</a>
<a href="javascript:zorKullan(katman,200,200,1)" style="font-family:Verdana,Arial; font-size:10pt; color:#FF0000; text-decoration:none">[ Zor kullan! - Yukarı-Sola(Tıklayın) ]</a>
</p>

<p>
<a onMouseOver="denetim=true;guzellikle(0)" onMouseOut="guzellikle(2)" style="font-family:Verdana,Arial; font-size:10pt; color:#0066FF; text-decoration:none; cursor: hand">[ Güzellikle - Aşağı-Sağa(Dokunun) ]</a>
<a onMouseOver="denetim=true;guzellikle(1)" onMouseOut="guzellikle(2)" style="font-family:Verdana,Arial; font-size:10pt; color:#0000FF; text-decoration:none; cursor: hand">[ Güzellikle - Yukarı-Sola(Dokunun) ]</a>
</p>

<script>
function zorKullan(arsiz,soldan,yukardan,yon){
if(yon==0){
arsiz.style.pixelLeft+=soldan
arsiz.style.pixelTop+=yukardan
}
else{
arsiz.style.pixelLeft-=soldan
arsiz.style.pixelTop-=yukardan
}
arsiz.innerHTML="Yandııımmm Anaaammm!!!"
}

var denetim

function guzellikle(yon){
if(yon==0&&denetim==true){
katman.style.pixelLeft+=1
katman.style.pixelTop+=1
setTimeout("guzellikle(0)")
}
else if(yon==1&&denetim==true){
katman.style.pixelLeft-=1
katman.style.pixelTop-=1
setTimeout("guzellikle(1)")
}
else denetim=false
}
</script>


Bu kodu boş bir sayfaya yapıştırarak hemen çalıştırabilirsin...
İlk adımı atmanda faydalı olacaktır...

fixman
02/04/2003, 13:20
Benzer kodları "onResize" olayına da uygulayabilirsin...
Yani çözünürlük değiştiğinde katmanını istediğin konuma kıpırdatabilme için...
Ya da "Client Width" ve "Client Height" metodlarını kullanarak tarayıcı penceresinin belge için kullanılabilir alanına göre işlem yapabilirsin...
Bulabildiğin referans kitaplıklarını gözden geçirmeni tavsiye ederim...

Sevgiler...

xXx
02/04/2003, 18:04
Fixman yardımın için çok teşekkür ederim

+ Bizler için en garanti yol olan deneme-yanılma ile de uzun da olsa bir çözümde ben buldum.

Olay,
Tasarımımın olduğu tabloyu bir katman içine yerleştiriyorum show-hide olacak katmanlarıda bu ana katmanın üzerine ekliyorum. Sonra IE de pencere boyutu değişse de ustteki küçük katmanlar diğer objelerle orantılı olarak konumlanıyorlar.
------------------------------------------------------------------------
Oh beee başıma ağrı girmişti bu katmancıklar yüzünden:)

zEE
11/04/2003, 22:57
Siteyi hazırlarken katmanları "%" değeri ile pozisyonlarsan herhangi bir sorun ile karşılaşmazsın.
Tabi Z-indexleri düzgün olarak düzenlemiş olduğunu varsayıyorum.

fixman
14/04/2003, 11:08
Valla mantıklı cevaplar çoğalsın derim ben...

"Fixman yardımın için çok teşekkür ederim"

Ben de sana teşekkür ederim dostum... Verdiğim cevap biraz geyik olsa da...

zEE
14/04/2003, 14:59
Çok mu mantıksızdı ? Nedenini söylersen bende öğrenmiş olurum böylece. (kesinlikle kinaye yapmıyorum yanlış anlama)

fixman
15/04/2003, 11:59
Ben de kinaye yapmadım...
Sevgiler...
:super: