Çerçeveler
11. ÇERÇEVELER (FRAME)
Çerçeve tekniği, bir web sayfasını istenilen miktarda parçaya bölüp, bu sayfa üzerinde birkaç sayfa birden görüntülenmesine olanak verir. Bu tekniğin en çok kullanılan varyasyonu, sayfanın sol veya üst kısmından küçük bir alanı bölmek (yani sayfayı ikiye bölmek), bu küçük alana menü bilgilerini, diğer büyük alana ise sayfanın asıl içeriğini yerleştirmektir.
Fakat şunu da belirtmekte fayda var, birçok tasarımcı estetik açısından çerçevelere pek sıcak bakmaz; genelde üst üste tablolar kullanmayı tercih eder. Yine de pek sık kullanılmayan bu tekniği aklınızın bir yerinde tutun, belki faydalı olabilir...
Bir uyarı: Netscape 2.0 ve Explorer 3.0 altı browser'lar, çerçeveleri tanımazlar!
ÇERÇEVE TEKNİĞİNİN GENEL MANTIĞI
Çerçeve tekniğinde, ilk önce parent(ana) frame denilen bir sayfa oluşturmak gerekir. <Frameset>... </frameset> etiketlerinin parametreleri olan cols ve rows ifadeleri ile sayfayı dikey ve yatay olarak ne oranda bölmek istediğimizi browser'a bildiririz. Src parametresi ile ana çerçevenin bölümlerinde görüntülenecek sayfaların adreslerini bildirdikten sonra, geriye biraz önce adreslerini bildirdiğimiz sayfaları uygun bir şekilde hazırlamak kalır. Şimdi bu biraz karışık ifadeyi bir örnekle daha iyi anlayalım, sonra da <frameset> etiketini inceleyelim.
Önce ana pencereyi hazırlayalım:
<html>< BR><head> |
Burada yaptığımız şey ana sayfayı soldan 150 piksel genişliğinde bölüp iki sayfa elde etmekten ibaret. Ayrıca browser'a soldan ilk bölüme (150 px olan bölüm) 'menu.html', ikinci bölüme ise 'esas.html' sayfalarını yerleştirmesini bildirdik. Burada dikkat edilmesi gereken nokta <frameset> etiketinin </head> ile <body> etiketleri arasına yerleştirilmesidir. <Noframes>...</noframes> etiketleri içinde yer alan bölüm ise çerçeveden anlamayan eski sürüm browser'lar içindir. Şimdi aşağıdaki kodlardan ilkini 'menu.html', ikincisini ise 'esas.html' adıyla ana pencereyi kaydettiğiniz dizine kaydedin.
<html>
|
<html> </head>
</body> |
Son olarak tekrar ana sayfayı açtığınızda (ismi önemli değil, yeter ki diğer iki sayfa ile aynı dizinde bulunsun!) sonuç böyle olacaktır:
Artık çerçevelerin mantığını anladığımıza göre bu tekniğin detaylarını inceleyelim...
11/2. <FRAMESET> ve <FRAME> ETİKETLERİ
Aşağıda <frameset> etiketinin parametrelerini görüyorsunuz :
rows |
Safayı enine bölmenizi sağlar |
<frameset rows="150,*"> |
|
cols |
Sayfayı boyuna bölmenizi sağlar |
<frameset cols="150,*"> |
|
cols ve rows parametreleri piksel değeri alabilecekleri gibi '%' cinsinden de değer alabilirler, örneğin: |
|||
frameborder |
Ana sayfanın bölümleri arasında sınır çizgisi olup olmamasısını belirler.('yes', 'no'; veya '1', '0' değerlerini alır) |
<frameset cols="150,*" frameborder="1"> |
|
border |
Çerçeveler arasındaki sınırın kalınlığını piksel cinsinden belirler. |
<frameset cols="150,*" border="10"> |
Şimdi de <frame>; etiketinin parametreleri:
src |
Bunu zaten biliyorsunuz, çerçeve içinde görüntülenecek sayfanın yeri |
marginwidth |
Sayfanın solundaki kenar boşluğunu belirtir |
marginheight |
Sayfanın üstündeki kenar boşluğunu belirtir |
noresize |
'1' veya '0' değerlerini alır, '1' verilirse pencere boyutları sabitlenir. |
scrolling |
'yes', 'no', 'auto' değerlerini alır, kaydırma çubuklarının durumunu belirler. |
11/3. FRAME UYGULAMALARI
Aşağıda bazı çerçeve örnekleri ve bu örneklerin kodları verilmiştir:
<frameset rows="150,*" cols="150,*" > |
|
<frameset rows="150,*"> |
|
<frameset rows="150,*"> |
|
<frameset cols="150,*"> |
Çerçevelerle çalışmaya başlamadan önce bilmeniz gereken önemli bir nokta:
Hatırlarsanız bağlantılar konusunda <a> etiketinin target isimli bir parametresi olduğundan ve bu parametrenin 'Çerçeveadı' değerini alabileceğinden bahsetmiştik. Bu parametre bize bağlantının belirttiği adresdeki sayfanın adını verdiğimiz çerçeve içinde açılmasını sağlar. Örneğin bu sayfadaki ikinci örneği ele alalım:
'İstiyoruz ki sayfanın yeşil bölümü sayfamızın menüsü olsun. Ziyaretçi buradaki bağlantılara tıklayarak sitenin diğer sayfalarına ulaşsın, ama bu diğer sayfalar sarı bölümde görüntülensin.'
İşte aşağıdaki kod bunu sağlar:
<a href="www.sayfaAdi.com\secenek1.html target="sari">Bu link saril bölümde görüntülenecek!</a> |
Gördüğünüz gibi çerçevelere verdiğimiz isimler (name) bu noktada önem kazanıyorlar