Program Yapmak | Programcılık Hakkında Her Şey | VİSUAL BASİC 6.0 | C, C++ ve C# Yazılım Dilleri | VB.NET Yazılım Dili

frame dersi genel anlatim

Şimdi de solda menu, üstte reklam ve geri kalan sağ alt taraftada ana sayfanın olduğu bir frame sayfası oluşturalım. Bunu yapmamız için index.html sayfasında yapacağımız değişiklikler şunlardır.

<HTML>

<HEAD>

<TITLE> BU SAYFA FRAME TEKNİĞİ İLE YAPILMIŞTIR </TITLE>

</HEAD>

<FRAMESET cols="130,*">

<FRAME src="menu.html" name="menu">

<FRAMESET rows="80,*">

<FRAME src="reklam.html" name="reklam">

<FRAME src="ana.html" name="ana">

</FRAMESET>

Eğer bu yazıyı görüyorsanız browserınız Frame tekniğini desteklemiyor demektir.

</HTML>

    Gördüğünüz gibi önce cols attribute ile 130 piksellik bir menü ve geri kalan iki parça içinse * ile sınırsız değerini verdik. Sonra da rows attribute ile sağdaki büyük parçayı ikiye böldük. Bu parçanın 80 pikselini reklama ve geri kalanını da ana sayfaya ayırdık. Tabii farketiğiniz gibi bir de reklam sayfası hazırlamak lazım, hadi onuda yapalım.

<HTML>

<HEAD>

<TITLE> REKLAM </TITLE>

</HEAD>

<BODY bgcolor="blue" text"ffffff">

<CENTER>

<H1> Reklam Sayfası </H1>

</CENTER>

</BODY>

</HTML>

    Dört sayfayıda eksiksiz tamamladıysanız görünecek sayfa aşağıdaki gibi olmalıdır.

    Gördüğünüz gibi parçaların arasında borderlar(sınırlar) var. Ayrıca çerçevelerin içeriği fazla olduğunda doğal olarak scrollbar (kaydırma çubuğu) çıkacaktır. Bu bazı durumlarda özellikle menülerde istenilmeyen bir durumdur. Bu tür durumlarda kullanılan FRAME taginin attribute`larını görelim.

    Kaydırma çubuğunu yok etmek istediğiniz parçanın <Frame.. tagi içerisine scrolling="no" yazmamız yeterli. Parçalar arasındaki çizgileri yok etmek için <Frameset> taginin içine frameborder="0" değerini yazın ayrıca bordercolor=" ile bordera renk verebilirsiniz. Frameler arasındaki uzaklığı ayarlamak için <Frameset> içine framespacing, frameler içindeki boşluğu ayarlamak için <Frame.. içinde marginwidth ve marginheight attribute`larını koyup istediğiniz değerleri vererek yapabilirsiniz. Birbirine çok yakın arada boşluk olmaksızın frame tekniğiyle sayfa hazırlamak için tüm değerleri sıfırlamalısınız. Bu attribute`ları bir örnekle gösterecek olursak.

<HTML>

<HEAD>

<TITLE> BU SAYFA FRAME TEKNİĞİ İLE YAPILMIŞTIR </TITLE>

</HEAD>

<FRAMESET cols="130,*" frameborder="2" bordercolor="red" framespacing="9">

<FRAME src="menu.html" name="menu" marginwidth="4" marginheight="2" scrolling="auto">

<FRAME src="ana.html" name="ana" marginwidth="0" marginheight="0" scrolling="no">

</FRAMESET>

Eğer bu yazıyı görüyorsanız browserınız Frame tekniğini desteklemiyor demektir.

</HTML>

    Frame sayfalarında olan karışıklıklardan biride linklerdir. Diyelimki sol menüdeki bir linki tıkladınız, bu durumda tıklanan linkteki sayfanın menünün olduğu parçada değilde sağ taraftaki büyük parçada çıkmasını isteriz. Ama bu şimdiye kadar öğrendiğimiz link verme teknikleriyle olanaksız. Bunu sağlayan Frame taginin içinde kullandığımız name attribute`u siz bunlara istediğiniz ismi verebilirsiniz. Yaptığınız linkin sayfadaki hangi parçada açılmasını istiyorsanız <A> tagi içine koyacağınız target attribute`una o ismi vermelisiniz. Mesela bizim yaptığımız örneği baz alırsak, menüdeki bir linki tıklayınca sayfanın ana parçada çıkmasını istiyorsak, menu sayfasında oluşturacağımız link <A href="http://www.TasarimKursu.cjb.net" target="ana"> olacaktır. Üsttekinde açmak içinse target="reklam" yazmalıyız. Ayrıca frame`lerin içinde değilde tüm sayfada açılmasını istiyorsanız target="_top" , başka bir sayfada açmak içinse olmayan bir isim verin, mesela xxxx gibi öyle bir freme olmadığı için başka sayfada açılacaktır.

    FRAME tekniğinin çok kullanılmış ama eskimiş bir teknik olduğunu belirtmeliyim. Eğer birbiriyle çok iyi uyumlu, çok iyi bağlantılı Frameler yaparsanız ne ala ama sayfanın ortasında kaydırma çubukları olan sayfalar ziyaretçilerin pek görmek istemediği birşey. Ayrıca sayfanızda çok fazla frame kullanmak karışıklığa da neden olacaktır.

    Hazırladığınız frame sayfasını değişik pencere boyutlarında deneyerek aldığı şekillere dikkat edin. Çünkü ziyaretçilerin sistemleri 640*480 ila 1600*1200 arasında olabilir ve herkes parçaların içindeki bilgileri rahat görebilmelidir. Bir satırı okuyabilmek için devamlı yatık çubuğu kaydırmamalıdır. Bu hata o kadar çok yapılıyorki. Mesela profesyonel tasarımcılar genelde 1280*1024 çözünürlükten aşağıda çalışmaz ama sayfayı 800*600 `e göre yapar. Fakat yaptığı hata sayfayı 800*600 `de denememektir. Sadece verdiği değerlere bakar ve tamam der. Oysa browser penceresinin kenarlarındaki yerleri hesaba katmaz.

    800*600 çözünürlükte bir browser penceresine en fazla 770 piksel küsur sığar. Aşağı-yukarı 30 piksel programın kenarları tarafından harcanır. Ayrıca Body taginde topmargin="0" leftmargin="0" rightmargin="0" marginheight="0" marginwidth="0" gibi attribute`lar kullanmamışsanız, standart olarak her kenardan 10-20 piksel bırakılacaktır. Bu değerleri sıfırlamamışsanız kullanacağınız alan ancak 750 piksel civarı olabilir.
 

Sincan Laptop tamiratı ile alakalı içeriklerin bulunduğu web siteden bilgilere ulaşabilirsiniz. Sincan'da laptop tamiratını en iyi yapan yerleri sorgulayabilirsiniz. Cihan KOÇ
=> Sen de ücretsiz bir internet sitesi kurmak ister misin? O zaman burayı tıkla! <=