Dreamweaver'ın bizlere sunduğu güçlü tasarım ortamını kullanarak modern standartlara uygun, geçerli ve tarayıcılar tarafından kolay çözümlenebilen şık sayfalar tasarlamanın temellerini bu makalede inceleyeceğiz.
Çok değil birkaç yıl önce sayfa tasarımlarımızı yaparken ara yüz bileşenlerini tablolar kullanarak görünmez ızgaralar üzerine inşa ederdik. Bu durum; HTML yapı dilinin web tasarımcıları tarafından hatalı yorumlanmasının ve kullanılmasının bir sonucu idi. Tarayıcılar arası çekişmelerin ve tüm Internet alışkanlıklarımızı etkileyen tarayıcı savaşlarının bir sonucu olarak ortaya çıkmıştı. Fakat Web 2.0 kavramının gündeme geldiği şu günlerde artık eski tasarım alışkanlıklarını bir kenara bırakıp modern tasarım ve web teknolojilerine cevap verecek web sayfaları tasarlamanın vakti geldi de geçiyor bile.
Modern tasarım süreçlerinin bazı yaptırımları vardır. Aslında bunlara "yaptırım" demek ne kadar doğru bilemiyorum ama geçerli bir sayfa yapmak için bunlara dikkat etmemiz gerekiyor. Makaleyi okuyan birçok arkadaş için sıkıcı bir konu olsa da bu hususları işin başından ele alarak ileride yaşanacak muhtemel hataları elimine edebilirsiniz.
Bunlardan bazıları şu şekilde sıralanabilir.
İlk madde olan doğru "DOCTYPE" bilgisinin seçilmesi konusuna ilgili makalede oldukça ayrıntılı bir biçimde deyinmiştik. Genel bir özet olarak şunları belirtmekte fayda var; eğer spesifik olarak XHTML'e ihtiyaç duymuyorsanız (sayfanız XML verisi içermiyorsa) ve standart olarak bir HTML sayfası tasarlıyorsanız, başka bir deyimle amacınız sayfanızı anlaşılabilir bir biçimde kullanıcılara sunmak ise kullanmanız gereken doküman türü "HTML 4.01 Strict" tanımlamasıdır.
Doğru "DOCTYPE" tanımlaması sayfa tasarımlarımızda tarayıcılar arası kayma ve farklı görünüm sorunlarının aşılması açısından en önemli aşamalardan biridir. Eğer doküman türü doğru tanımlanmaz ise safta tarayıcı tarafından hatalı olarak, "Garip Mod" (Quirks Mod) adı verilen bir durumda yorumlanacak bu durum da sayfamızın hatalı görünmesine sebep olacaktır.
CSS2 ile sıkça konuşulur olan bu CSS kutu modeli, sayfadaki tüm içerik alanlarını birer kutu gibi değerlendirir ve boyutlandırma ve konumlandırma işlemini özel bir algoritma ile algılar. Burada sözü geçen "kutular" içeriğimizi yerleştirdiğimiz HTML bileşenlerini ifade etmektedir. (Örneğin DIV, tablo, başlık ve/veya paragraflar) Eğer bir dokümanın "DOCTYPE" bilgisi doğru bir biçimde tanımlanmış ise modern tarayıcılar "Standart Mod" ile çalışıp bu içerik alanı bileşenlerinin boyutlarını hesaplarken şöyle bir yol izler;
Bir objenin (kutunun) tüm genişliği; içerik (content area) + çerçeve kalınlığı (border) + kenar boşluları (padding) değerlerinin toplamına eşittir. Yani CSS'de "width: 300px" olarak belirtilen bir DIV etiketinin genişliği sadece içerik alanının (content area) belirtir. Eğer bu DIV etiketinin çerçeve kalınlığı 1 piksel ve içeriğin DIV sınırlarına olan uzaklık bilgisi (padding) de 10 piksel ise bu DIV etiketinin toplam kapladığı alan:
sol çerçeve+sol boşluk+içerik+sağ boşluk+sağ çerçeve
1+10+300+10+1=322 pikseldir.
Modern tarayıcılar Standart mod ile çalışırken bunu algılayıp yaptığınız biçimlendirmeleri buna göre yorumlarlarken, diğer taraftan Garip mod ile çalışırken eski tarayıcılar gibi yorumlarlar. Eski tarayıcılarda ise bu 300 piksellik genişlik DIV etiketinin toplam genişliğini bildirir ve içeriğin genişliği, kenar boşluları ve çerçeve genişliği bu değerden çıktıktan sonra kalan değere (300-22=278 piksel) eşittir.
CSS kutu modeli hakkında daha detaylı bilgi için;
Bu konu, sayfalarımızın tarayıcılar tarafından daha kolay ve doğru yorumlanması ve yaptığımız hataları daha kolay algılayıp müdahale etmemizi sağlaması açısından oldukça önemli bir yere sahiptir. Web tasarımı ile ilgilenmeye başlayan birçok kullanıcı yaşadığı basit sorunların neden kaynaklandığını, sayfalarını geçerli hale getirmeye çalışırken görebilirler.
Örneğin bir etiketi (HTML tag) kullanılmaması gereken bir yerde kullanıldığında bu standartlara uygun olmayan bir sayfadır ve muhtemelen tarayıcı tarafından hatalı yorumlanmaya sebep olan bir durumdur. Acemi kullanıcı bu geçerlilik kuralını sayfasına uyguladığında yaşadığı sorunu da halletmiş olacaktır. Bu geçerlilik kuralları web geliştiricilerin işlerini kolaylaştırmak ve standart bir kod yapısı ile uyumluluğu arttırmak amacı ile konmuşlardır. Neden sayfalarımızı geçerlememiz gerektiği ve bunun için yapabileceklerimiz hakkında daha detaylı bilgiyi Roger Johansson'ın "Web Standartlarını Kullanarak Geliştirmek" başlıklı nefis makalesinden alabilirsiniz.
Sayfalarımızın standartlara uygun olup olmadığını W3C (web komisyonu) geçerleme motorundan kontrol ettirebilir hatalarımızı daha yakından görebiliriz.
Evet, biraz uzun bir giriş oldu fakat yeni bir sayfa yapmaya başlamadan önce bunları göz önünde bulundurmamız gerekmektedir. Şimdi uygulamaya geçebiliriz.
| Orhan Veli Firik | |
| Orhan | |
| Eklenme tarihi | |
| 13 Haziran 2007 Çarşamba 12:17:27 | |
| Puan ver | |
Sitemizden indirdiğiniz eklentileri nasıl yükleyeceğinizi ve kullanacağınızı bilmiyorsanız bu makaleden başlayabilirsiniz. Genel olarak Dreamweaver eklentileri üzerine kısa bir yazı buyrun...
Yorumlar
Öncelikle çok teşekkür ederim. Çok yararlı bir kaynak benim için. Takıldığım bir yer var aşamadım onu sormak istedim. Söylediklerinizi adım adım yaptım fakat #sayfa #ustAlan h1 ve #sayfa #ustAlan p stil özelliklerini ayarlamaya çalıştığımda "sitemizin başlığı" ve "slogan" layer alakasız bir yerde çıkıyor ve müdahale edemiyorum. Sebebini çok merak ettim. Yardımcı olursanız sevinirim. Nerde yanlış yapıyo olabilirim.
sorunun tam olarak ne olduğunu buradan soylemek zor. foruma ilgili sorun için bir başlık açıp ornek dosyaları gonderiren oradan yorum yapabiliriz.
Öncelikle teşekkürler.Bazı sorunlar çıktı hallettim
ben aşağdaki gibi takları sıraladım düzeldi
Panoya kopyala
cok teşekkürler neredeyse çağ atladım
çok teşekkürler.iki sorum var müsadenizle.
1)bunları DW de CS'te yada 8 layout ile AP elements ile çizip sonra ayarlasakta olur di mi?aynı kapıya çıkıyo yani.
2)üstalan daki h1 başlığın position ayarıyla oynayana kadar firefoxta üstte boşluk çıkıyordu.relative yapınca düzeldi fakat absolutte aynı kalıyor.orası niye öyle onu anlamadım.turuncu alanı direk yukarı yapıştıramaz mıyız?niye başlığa bağlı?nasıl yapabiliriz olursa?
şimdi AP elementlerle yapmak tam olarak istediğimiz sonucu vermeyebilir. Zira mutlak konumlandırmada genelde çözünürlüğe bağlı kaymalar olabiliyor. Konumlama ve biçimlendirmeleri bu şekilde yapmak tasarımı kontrol altına almak açısından daha uygundur.
2. soruyu tam anlayamadım. Zaten turuncu alanın üst kısma bitişik olması gerekiyor. Eğer kasteddiğin başlığın yukarıya yapışık olması ise H1 için positioning değerlerindeki Top değeri ile oynamalısın.
birturlu alt alan ust alan icerik ...vs bu bolumlerı anlatıldıgı şekilde ayıramadım.hepsi içiçe giriyor.sanırım en başta sayfa div i acıp içerisine diger divleri oluşturmada yanlış birşey yapıyorum.tekrar denicem
geç oldu ama oldu sonucta ,yaptım
bir güzel haberde yağmur yağıyor aman allahım ben ne mutlu oldum geceyarısı
teşekkürler, hayırlı çalışmalar...
Orhan ikinci soru;
4. sayfada #sayfa #UstAlan h1 e sınıf atarken... absolute kullanmadan önce sayfa üstten 10 px gibi boşluk vardı.h1 e absolute verince üste yapıştı.niye öyle oldu anlamadım.bende mi sorun öyle mi olması gerekiyordu.alala.yani bi h1 e absolute verince niye tüm sayfa yapısı değişti anlamadım
sanırım önceki adımlarda birşeyi eksik yaptın. Üst div lerin positioning bilgisinin relative olması gerekiyordu.
Eğer herşeye rrağmen hala düzelmiyorsa Psitioning değerini relative yap float:left de sonra margin ve padding lerle oyna. 3 aşağı 5 yukarı aynı şeyi yaparsın
arkadaşlar ben bu konularda çok yeniyim bi sorum olcak:ben bu tasarımı yaptım ve #anamenu div'indeki haberler yazısına bir link vermek istiyorum.haberlaer yazısın basınca "resim.jpg" isimli resimin #içerik div'inde görüntülenmesini istiyorum. linkin target bölümünde icerik bölümünü seçebileceğim bir seçenek çıkmıyor bunu nasıl yapabilirim yardımcı olabilirmisiniz.
bir sorum olacak belki saçma oolacak ama benm su anda bunu öğrenmeye cok ıhtıyacım var;; Sayfayı 800*300 de bıle tam açmak için 790 px demıssınız; peki yatay sayfa kullanımında bu kac oluyor?
yatay sayfa ile tam olarak neyi kasteddiğini çıkaramadım biraz daha açıklayıcı olursan soruna yanıt verebileyim.
Not: sorular için forumu kullanırsak daha rahat olur.
hocam forumda yeni başlık açamadım, buradan cevaplarsanız sevinirim.
aynı satırda ikiden fazla "div" i nasıl barındırabilirim?
bu divler için CSS kuralı tanımlarsın. Birinin float:left diğerini float:right yaparsın böylece biri bir tarafa diğeri diğer tarafa hizalanır. Yada ikisini de flot:left yaparsan peş peşe hizalanır.
Toplam 27 adet yorum mevcut «« « 1 2 » »»
Yorum ekleyebilmek için öncelikle üye girişi yapmanız gerekmektedir