Bağlantılar
Geldik HTML'de en önemli unsurlardan birisi olan bağlantılara. Bağlantılar sayesinde hazırladığımız birçok sayfayı birbirleriyle ilişkili hale getirebiliriz. Bir tıklama bizi istediğimiz yere götürecektir. HTML'de metinlere ve resimlere bağlantı kazandırmak mümkündür. Örnek için bu sayfayı incelemeniz yeterli. Sol tarafta konuları veren bir menü bölümü var. Siz bu bağlantılardan birisini tıkladığınızda ilgili konu açılıyor, sayfa sonlarında da diğer derslere bağlantılar oluşturulmuş, bunlar tıklandığında ilgili sayfa açılıyor. Bu yolla başka neler yapılabilir? Ses, grafik dosyaları, sıkıştırılmış dosyalar, internet adresleri,.. bunların hepsine bağlantı kazandırmak mümkün. Hatta yapacağımız bağlantı sayfa içinde, yani dahili bir bağlantı da olabilir.
Şimdi yapmak istediğimiz bağlantıya göre kullanacağımız komutları inceleyim:
<a href="....">...</a>
Bu komutla oluşturduğumuz bağlantı ile yeni bir sayfa açabilir, kullanıcıyı farklı bir internet adresine yönlendirebilir, kullanıcının kendisine sunduğunuz bir dosyaya ulaşmasını sağlayabilirsiniz. Yani bu tanıma göre bildiğimiz bağlantıları oluşturmak mümkün.
Şimdi aşağıdaki örnekleri birlikte inceleyelim, fakat öncelikle bir kuralı belirtelim; <a>...</a> etiketi arasına yazdığımız metinler bağlantı özelliğine sahip olacaktır, metnin bağlantı olduğu eğer aksi belirtilmemişse browser tarafından altı çizili ve mavi renkli gösterilir.
<a href="meyve.gif">buraya tıklandığında meyve resmi açılacak</a>
Birinci örnekte "buraya tıklandığında meyve resmi açılacak" yazısına bağlantı özelliği kazandırdığımızdan, browser tarafından altı çizili mavi yazıyla gösterilecek ve kullanıcı fare imlecini yazı üzerine getirdiğinde imleç el şekline dönüşecektir. Kullanıcı bu linke tıkladığında browser o anda açık bulunan sayfa ile aynı dizinde bulunan meyve.gif resmini açacaktır. Tabii ki dosya farklı bir dizinde ise kullanıcı hata mesajıyla karşılaşır.
<a href="midi.zip">midi dosyalarını çekmek için tıklayın</a>
İkinci örnekte aynı şekilde "sıkıştırılmış midi dosyalarını çekmek için tıklayın" yazısına bağlantı özelliği kazandırdık. Fakat dosya tipinden kaynaklanan bir fark var; ilk örnekte meyve.gif'e tıklandığında browser resmi açacaktır fakat bu örnekte browser kullanıcıya midi.zip dosyasını açmak mı yoksa diske kaydetmek mi istediğini soran bir pencere açar. Bunun sebebi browser'ın htm, txt, jpg, gif,.. uzantılı dosyaları görüntüleyebilirken zip, doc, xls, mp3 gibi dosyaları açamamasıdır.
<a href="sayfa2.htm">2.sayfaya gitmek için tıklayın</a>
Yine üçüncü örneğimizde oluşturduğumuz linke tıklandığında aynı dizinde bulunan sayfa2.htm isimli başka bir html dökümanı açılacaktır.
<a href="resim/kedi.jpg">kedi resmi</a>
<a href="resim/bitki/karanfil.gif">işte çok güzel bir karanfil</a>
<a href="../araba/bmw.jpg">otomobil resimleri</a>
Bu 3 örnekte altdizinlere/üstdizinlere verilen bağlantıya misaller görüyorsunuz, resimler konusunda gördüğümüz kurallar burada da geçerli.
<a href="http://www.benimsitem.com/">tıklayın sitemi ziyaret edin</a>
Yedinci örnekte bir internet adresine link verdik.
<a href="ftp://ftp.benimsitem.com/">tıklayın dosyaları indirin</a>
Bu ise bir ftp adresine verilen link örneği.
<a href="mailto: mdurcan@webteknikleri.com">mail atın</a>
Buradaki linke tıklandığında kullanıcının ilgili mail programı açılacak ve mail'in send to (kime) kısmına, verdiğimiz mail adresi otomatik olarak yazılacaktır.
Sayfa içi (dahili) linkleri bu komutu kullanarak hazırlayabiliriz. Örneğin sayfanın üst kısmında sayfa indeksini gösteren bir menü olsun. Kullanıcı bu menüde istediği başlığa tıkladığında ilgili konu açılsın.
Örnek sayfa için listeler linkini tıklayın.
Böyle bir sayfa hazırlamak için yapacağımız şeyler:
"tıklandığında" açılacak konuyu işaretlemek <a name="....">...</a>
browser'a, hazırlayacağımız menüye "tıklandığında" bu işaretli konuya gitmesini bildirmek.<a href="#...">...</a>
"Listeler" sayfasının benzer bir örneğini yukarıda kodlarıyla birlikte görüyorsunuz. Sayfa içerisindeki başlıkları <a name>...</a> komutları arasına alıyoruz, name kısmına başlığı hatırlatıcı bir isim verebilirsiniz. Benim burada kullandığım <u> ve <b> etiketleri, önceden öğrendiğimiz gibi başlığı altı çizili ve koyu olarak yazıyor. Yine 1-2-3 başlıklarıyla oluşturduğumuz menü linklerini <a href> komutuyla hazırlıyoruz, yalnız bir farkla; name kısmında başlığa verdiğimiz hatırlatıcı ismi önüne # işaretini koyarak href kısmına yazıyoruz. İşte bu iş bu kadar kolay.
Diyelim ki kullanıcı sayfadaki bir linki tıkladığında, başka bir sayfanın belli bir bölümünün açılmasını istiyoruz, bunun için linke tıklandığında açılacak yazıyı <a name>...</a> ile işaretledikten sonra bağlantı etiketini şu şekilde yazıyoruz:
<a href="sayfa2.htm#ilgiliyer">
Bu linke tıklandığında başka bir sayfanın ilgili kısmı açılacak
</a>
<a name="ilgiliyer">
Başka bir sayfadaki linke tıklandığında burası açıldı
</a>
Resimlere bağlantı özelliği kazandırmak
Metinlere bağlantı vermeyi öğrendik, peki sayfadaki resimlere nasıl link vereceğiz? Bunun için resmi yerleştirmek için kullandığımız:
<img src="..." width="x" height="y"> etiketini <a href>...</a> etiketinin arasına alıyoruz.
İşte örnek;
<a href="sayfa1.htm"><img src="resim.gif" border="0"></a>
resim.gif tıklanacak resmi, sayfa1.htm resme tıklandığında açılacak sayfayı gösteriyor. Border komutu ise resimde bağlantı özelliği olduğunu belirten çerçeveyi kontrol ediyor, 0 (sıfır) değeri bu çerçeveyi tamamen yok eder. Bu komutu değişik sayılarla deneyebilirsiniz.
Son olarak bağlantının açılacağı pencereyi belirtmek için kullanılan target parametresini öğrenelim. Kullanımı :
<a href="..." target="...">...</a>
target="_blank" | Bağlantı yeni bir pencerede açılır. |
target="_self" | Bağlantı aynı pencere içerisinde açılır. |
target="_top" | Bağlantı aynı pencere içerisinde en üstten itibaren açılır. |
target="_parent" | Açılan bağlantı, o anda açık sayfayı oluşturmuş bir ana sayfa varsa onun yerine konur. |
target="çerçeve adı" | Frame komutu ile çerçeve oluşturulmuşsa bağlantının adı verilen çerçevede açılmasını sağlar |