ForumTayfa  

Go Back   ForumTayfa > Güvenlik & Bilgisayar & İnternet & Webmaster & Programlama Bölümü > Güvenlik & Bilgisayar & İnternet & Webmaster & Programlama > ASP, Perl, Php, Html

ASP, Perl, Php, Html ASP, Perl, Php, Html, Java gibi her tür programcılık dili için yardım alabilceğimiz bölüm...

Yeni Konu aç  Cevapla
 
LinkBack Seçenekler Stil
Alt 01.02.07, 13:48   #1 (permalink)
Yeni Tayfa
 
long_time_03 - ait Kullanıcı Resmi (Avatar)
 
Üyelik Tarihi: Jan 2007
Nereden: AfYoN
Mesaj Sayısı: 126
Konu Sayısı: 57
Rep Gücü: 233
Rep Puanı: 21927
Rep Derecesi : long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000long_time_03 0-250000
Ruh Hali:

Smile HTML Çerçeveler




Web sayfalarının bir özelliği de çerçevelerin (frame) kullanılabilmesidir. Çerçevelerin herbiri aslında ayrı birer sayfadır, ancak hepsi bir sayfada kullanıcıya sunulmuştur. Çerçeveleri iki soylu amaç için kullanmak mübahtır:

1. Sayfayı gezerken, yanda (üstte veya başka yerde de olabilir) bulunan yönlendiricilerin her zaman görülebilmesi için çerçeve kullanabiliriz, böylece kullanıcı sayfanın neresinde olursa olsun yönlendiricileri görebilir ve yönlendiricilere hemen ulaşabilir.

2. Sayfada yüklenmiş bazı yerler, diğer sayfalar boyunca sabit kalıyorsa, kullanıcıya durmadan aynı yerleri yükleteceğimize, o kısmı çerçeve halinde kullancıya bir defalığına yükletebiliriz.

Bunlar çerçeve kullanmak için çok iyi nedenler. Ama kullanmamak için de güzel nedenlerimiz var.

1. Herkesin sizin gibi son model bilgisayar kurulumu yok ve her browser çerçeveleri desteklemiyor. Bana ne elalemin bilgisayar eskilerinden diyorsanız, şunu da ekleyim, her arama motoru da çerçeveleri desteklemez.
2. Paralel kayan çerçeveler kullandığımızda, sayfadaki konumumuzu gösteren scroll bar, sayfa tasarımımızın estetiğine pek birşey katmıyor açıkçası.
3. Bazen çerçevenin biri yükleniyor, diğeri yüklenmiyor. (Bunun nedeni sizin tasarım özürünüz de olabilir, kullanıcının veri akışının zayıflığı da) Ve yarım yüklenen siteler kullanıcıyı pek cezbetmiyor.

Bunlar da olumsuz etkenler. Ama kullanıp kullanmamanız sizin kendi tercihiniz olmalı. Piyasada "frame (çerçeve) kullanana hırbo derler" veya "frame'siz web sayfası olur mu be!" gibi uç (ekstremum) kesimlerin propagandalarını dinlemek yerine, sayfanızın özelliklerine göre karar vermenizi tavsiye ederim.

Çerçeve Oluşturma

Çerçeveler <frameset>...</frameset> kodları arasında tanımlanır. Eğer yanyana (sütunsal) çerçeveler istiyorsanız, cols="..." parametresini, eğer birbiri aşağısına (satırsal) çerçeveler istiyorsanız, rows="..." parametresini kullanırsınız. Tırnak içine kullanacağınız çerçevelerin genişliklerini (satırsal çerçevelerde yüksekliklerini) yazacaksınız. Genişlikleri (veya yükseklikleri) piksel cinsinden yazabileceğiniz gibi, yüzde olarak da yazabilirsiniz. İsterseniz çerçevenin genişliğini (veya yüksekliğini) belirlemek zorunda değilsiniz; genişliğini (yüksekliğini) belirtmek istemediğiniz çerçeve için "*" (asteriks) işaretini koyabilirsiniz. Örneğin <frameset cols="200,*,50"> ifadesi, ilki 200 piksel genişliğinde, üçüncüsü 50 piksel genişliğinde üç sütunsal çerçeve söz konusudur; ikinci çerçevenin genişliği belirlenmemiştir, diğer iki çerçevenin genişliğini sağlayacak genişlikte olacaktır. Zaten tüm çerçevelerin genişlikleri (yükseklikleri) belirtilmez, en az bir tanesine * işareti konur.

Çerçeveler; daha önce tanımladığımız üzere, sayfada başka sayfaların beraber gösterilmesini sağlarlar. Yani her çerçeve aslında bir web sayfasına bağlıdır. Bu nedenle çerçevelerin konumları (sırasal veya sütunsal) veya büyüklükleri (genişlik veya yükseklik) belirtmek yeterli değildir. O çerçevelerin hangi sayfayı göstereceğini belirtmeliyiz. Bunun için <frame src="..."> kodu kullanılır. Buradaki src (source; kaynak) parametresi çerçevenin göstereceği çerçevenin url (web sayfası yani) adresini belirtiyor. (daha önceki konularda url adresinin nasıl yazıldığı ayrıntılı olarak açıklanmıştı) Dilerseniz bir örnek yapalım. Bu örnekte daha önceden yazdığım ve isimlerime frame1.html, frame2.html ve frame3.html gibi üç web sayfasını kullanacağım.Dikkat etmeniz gereken şey: Çerçeve kullanacağınız zaman <body> kodunu kullanamazsınız.



codeDivStart()Kod:
<html>
<head>
<title>Sütunsal Çerçeveler</title>
</head>
<frameset cols="25%,*,25%">
<frame src="frame1.html">
<frame src="frame2.html">
<frame src="frame3.html">
</frameset>
</html>



Uygulamada neler yaptığımızı sizler anlamışsınızdır ama ben yine de anlatayım. (Anlayanlar anlamayanlara anlatacak değil ya!) Bu uygulamamızda <frameset cols="25%,*,25%"> ifadesi ile ikisi pencerenin %25'ini kaplayan üç sütunsal çerçeve tanımladık. Daha sonra herbirinin gösterdiği sayfaların adreslerini <frame src="..."> koduyla belirttik. Ve üç tane yanyana çerçevemiz oldu. İlk çerçevemiz "frame1.html" sayfasını, ikinci çerçevemiz "frame2.html" sayfasını ve sonuncu penceremiz "frame3.html" sayfasını gösteriyor.

Dikkatinizi çekmiştir, son uygulamamız da çerçevelerin kalın kenarlıkları vardı. Bu kenarlıklar estetik açıdan pek tercih edilmez, bu nedenle <frameset> koduna border="0" parametresini atarız. Ne yazık ki her navigator bu parametreyi desteklemiyor. O nedenle frameborder="0" framespacing="0" border="0" parametrelerini kullanmanızı tavsiye ederim. (Tablo biçimi sayfasındaki konuya biraz benziyor değil mi?) Şimdi kenarlıksız, satırsal çerçevelere örnek verelim. Yine aynı sayfaları kullanacağım.




codeDivStart()Kod:
<html>
<head>
<title>Satırsal Çerçeveler</title>
</head>
<frameset rows="100,*,60" border="0" frameborder="0" framespacing="0">
<frame src="frame1.html">
<frame src="frame2.html">
<frame src="frame3.html">
</frameset>
</html>



Sanırım uygulamada neler yaptığımızı anlamışsınızdır; anlamayanlar zaten ilk örneği de anlamamışlardır, o örneğin açıklamalarına tekar baksınlar. İlk örnekte sütunsal dizili çerçeveleri, ikinci örnekte ise satırsal dizili çerçeveleri gördük. Şimdiki uygulamamız ise karma dizili çerçevelerdir. Bunun için <frameset> kodu iç içe uygulanır.




codeDivStart()Kod:
<html>
<head>
<title>Karma Çerçeveler</title>
</head>
<frameset rows="100,*" border="0" frameborder="0" framespacing="0">
<frame src="frame1.html">
<frameset cols="200,*" border="0" frameborder="0" framespacing="0">
<frame src="frame2.html">
<frame src="frame3.html">
</frameset>
</frameset>
</html>



Nasıl? Bir şeyler yaratmak zevkli değil mi? Sizler de isterseniz beğendiğiniz karma çerçeveleri oluşturabilirsiniz.

İçsel Çerçeve

Çerçevelerin bir başka şekli daha da vardır: <iframe> Bu komut sayfanın istediğiniz bir bölümünde çerçeve açar. (Bu kodu her gözatıcı desteklemez!) Atayacağınız width ve height parametreleriyle çerçevenin boyutlarını belirleyebilirsiniz



codeDivStart()Kod:
<html>
<head>
<title>İçsel Çerçeve</title>
</head>
<body>
Aşağıdaki içsel çerçevede "frame1.html" isimli web sayfası gözükmektedir:<br><br>
<iframe src="frame1.html" width="300" height="200"></iframe>
</body>
</html>


Bu örnekte dikkatimizi çeken neler? İçsel çerçevelerde <body> kodunu kullanabiliyoruz. İçsel çerçeveyi görünmez tablolarla istediğimiz yere kolaylıkla yerleştirebiliriz. İnternette gezinirken, içsel çerçeveler kullanarak oluşturulmuş, estetik açıdan çok zengin sitelere rastlayacağınızdan eminim. Bizim uygulamamızda dikkati çeken birşey daha var: İçsel çerçeve gölgeli kenarlıkla çevrilmiş. Eğer kenarlık istemiyorsanız frameborder="0" parametresini kullanırsınız. Buradaki "0" kenarlığın olmadığı anlamına gelir. Eğer kenarlığın olmasını istiyorsanız ve kalınlığını belirleyecekseniz border="..." parametresini kullanacaksınız, tabi bu durumda frameborder="1" olmalıdır. (yazmaya gerek yoktur, frameborder parametresinin varsayılan değeri 1'dir zaten)

Çerçeve Yönlendirme

Çerçevelerin bir web sayfasını gösterdiğini daha önce defalarca belirtmiştik. Bazı durumlarda bir çerçevenin, kullanıcının belirttiği web sayfasını göstermesini isteyebiliriz. İki sütunsal çerçeveden oluşan bir sayfa düşünün. İlk kısmında yönlendiriciler olsun. Bu yönlendiricilerden kullanıcı hangisini seçerse, ikinci çerçevede o sayfa görünsün. Bunu yapabilmek için ikinci çerçeveye name parametresiyle bir isim veririz ve birinci çerçevedeki yönlendiriciler target parametresiyle o çerçevedeki sayfayı değiştirebilirler. Şimdi bir uygulama yapacağız. İlk çerçeve için yönlendiricilerin bulunduğu, frames.html isimli bir sayfa hazırlayacağım önce. İkinci çerçevenin yönlendiricilerle (kullanıcının seçmesi halinde) göstereceği sayfalar ise daha önce kullandığımız frame1.html, frame2.html ve frame3.html isimli sayfalar olacaktır. Şimdi frames.html isimli sayfanın kodlarını göreceksiniz.



codeDivStart()Kod:
<html>
<head>
<title>Yönlendiriciler</title>
</head>
<body>
<br>
<a href="frame1.html" target="pencere">Frame1</a><br>
<a href="frame2.html" target="pencere">Frame2</a><br>
<a href="frame3.html" target="pencere">Frame3</a><br>
</body>
</html>


Bu sayfa aşağıdaki uygulamada ilk çerçeve olarak yeralacak. Ama verdiği linkler "pencere" isimli bir çerçeveye ait olacak. İkinci çerçeveye bu ismi koyacağımızı anlamışsınızdır sanırım.



codeDivStart()Kod:
<html>
<head>
<title>Yönlendirici Çerçeveler</title>
</head>
<frameset cols="150,*" frameborder="0" border="0">
<frame src="frames.html">
<frame src="frame1.html" name="pencere">
</frameset>
</html>



Çerçeve Desteklemeyen Gözatıcılar için Önlemler

Çerçeveler konusunda öğrenmemiz gereken birkaç şey daha var. Her browser çerçeveleri desteklemediği için, onlara hitaben <noframe>...</noframe> kodları geliştirilmiştir. Bazı browser'lar <frameset>...</frameset> ve <frame> kodlarını görmemektedir ama <noframe>...</noframe> kodları arasına yazacaklarınızı görebileceklerdir. Mesela şöyle yazılabilir: <noframe>Bu web sitesi çerçevelerden oluşuyor, ancak sizin browser'ınız desteklemediği için göremiyorsunuz.</noframe> gibi. Tabi çerçeveyi desteklemeyen browser'lar için aynı kodu kullanarak, biraz da JavaScript ile çerçevesiz başka bir sayfaya yönlendirmek de mümkün. (tabi bunu JavaScript öğrenirken göstereceğim)

Çerçeve Özellikleri

Kısaca <frame> kodunun parametrelerine de değineyim; name parametresine değinmiştik, şimdi scrolling="no" parametresine değinelim. Eğer bu parametreyi kullanırsanız, söz konusu çerçeve "scrollbar" aracını kullanmayacaktır. Bunun anlamını, kendi uygulamalarınız geliştirirken daha iyi anlarsınız. Bir başka parametre daha: noresize. Eğer çerçevelerin kenarlıkları "0" değilse, çerçeveyi fare ile genişletmek veya daraltmak mümkündür. Bunu engellemek isterseniz bu parametreyi yazmanız yeterli olacaktır.


__________________
[Sadece Kayıtlı Kullanıcılar Linkleri Görebilir.Kayıt Olmak İçin Tıklayınız...]
[Sadece Kayıtlı Kullanıcılar Linkleri Görebilir.Kayıt Olmak İçin Tıklayınız...]
[Sadece Kayıtlı Kullanıcılar Linkleri Görebilir.Kayıt Olmak İçin Tıklayınız...]
[Sadece Kayıtlı Kullanıcılar Linkleri Görebilir.Kayıt Olmak İçin Tıklayınız...]
long_time_03 isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Cevapla


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 04:48.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.6.0
User Alert System provided by Advanced User Tagging v3.0.6 (Lite) - vBulletin Mods & Addons Copyright © 2020 DragonByte Technologies Ltd.
ForumTayfa

Arşiv: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 16 22 23 24 25 26 27 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 95 96 97 98 99 100 102 103 104 105 106 155 156 157 158 159 160 161 162 163 164 167 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271


ForumTayfa - Link Değişimi
Telinka İletişim | Voip Ürünleri | Link Değişimine Katılın |

Sitemiz bir forum sitesi olduğundan dolayı, kullanıcılar her türlü görüşlerini önceden onay olmadan anında siteye yazabilmektedir. ForumTayfa Yöneticileri mesajları itina ile kontrol etse de, bu yazılardan dolayı doğabilecek her türlü sorumluluk yazan kullanıcılara aittir. Yine de sitemizde yasalara aykırı unsurlar bulursanız [email protected] email adresine bildirebilirsiniz, şikayetiniz incelendikten sonra en kısa sürede gereken yapılacaktır.

Any member of our web site has the right of adding comments instantly without getting permisson due to the forum structure of our site basis. Althought, our site modarators check comments with care, all the responsibilities sourced from these comments directly belong to the members. If you still find any illegal content in our site ( A.buse, H.arassment, S.camming, H.acking, W.arez, C.rack, D.ivx, Mp.3 or any Illegal Activity ), please report us via [email protected] .Your reports will be evaluated as soon as the arrival of your e-mail.