Tablolarla layoutların oluşturulduğu dönemin ardından, standartlara sıkı sıkıya sarılan web tasarımcılarının bir bocalama geçirdiği çok açık. Tabloların yarattığı alışkanlığın bir devamı mıdır, yoksa yeni modern arayüz konseptinin tam algılanamaması mıdır bilinmez, ama gelin görün ki iki hastalığımız var. Divitis ve Classitis…
Bu kavramlarla ilk olarak CSS teknikleri üzerine okuduğum bir kitapta rastlamıştım. O zaman bu alışkanlıklara verilen bu iki isim (Divitis ve Classitis), gerçekten oldukça hoşuma gitmişti. Ve böyle bir hastalığım olduğunun farkına varmamı sağlamıştı o kitap.
Kısaca özetleyelim nedir bu hastalıklarımız;
Tablolarla olan ilişkilerine bir çeki düzen verip, standartların işaret ettiği yöne bakan biz web geliştiricileri, orada ne bulduysak sıkı sıkıya sarıldık. Tabloları artık layoutları oluşturmak amacıyla kullanmayacaktık. Burada W3C bize biricik Div etiketini öneriyordu. XHTML dokümanı içerisinde içeriği anlamlı bloklara ayırmak için div’i kullanacaktık Biz bunu pek güzel yaptık, ama biraz fazla abarttık. Anlamlı, anlamsız her şeyi div içine almaya başladık. Bir örnek vermek gerekirse…
<div class="baslik">Yazı Başlığı</div> <div>Yazı İçeriği <div class="onemli">Burada</div></div>
Bu XHTML, tablo etiketi içermese de, her yerden div fışkıran bu yapısıyla pek doğru bir örnek oluşturmuyor. Doğrusu şöyle olmalıydı;
<h1>Yazı Başlığı</h1> <p>Yazı İçeriği <strong>Burada</strong><p>
Gördüğünüz gibi aslında bu XHTML kod bloğunda Div etiketine ihtiyacımız yok. Başka bir divitis vakasını inceleyelim;
<div id="Navigasyon">
<ol>
<li><a href="#">anasayfa</a></li>
<li><a href="#">hakkımda</a></li>
<li><a href="#">iletişim</a></li>
</ol>
</div>
Burada özel bir sebebi yoksa, ol etiketini saran bir div etiketine ihtiyacımız yok. Anlamlısı ve doğrusu şöyle olmalıydı;
<ol id="Navigasyon">
<li><a href="#">anasayfa</a></li>
<li><a href="#">hakkımda</a></li>
<li><a href="#">iletişim</a></li>
</ol>
Divitis hastalığımızdan kurtulalım, kurtulun!
Modern web uygulamaları geliştirenlerin ikinci gizli hastalığı ise classitis. Belirli bir etiket grubunu seçmenin en makbul yoludur class’lar. Bu kolaylık bazen işin gereksiz yere çığırından çıkmasına sebep olmuyor değil. Örnekleyelim;
<div class="icerik">
<p class="yazi">Yazı İçeriği <a class="mavi" href="#">Buraya</a> Geliyor</p>
<p class="yazi">Yazı İçeriği Devamı <a class="mavi" href="#">Buraya</a> Geliyor</p>
</div>
Bu örnekte classitis‘i görmüş olmanız lazım… Aslında şu şekilde olmalıydı.
<div class="icerik">
<p>Yazı İçeriği <a href="#">Buraya</a>Geliyor</p>
<p>Yazı İçeriği Devamı <a href="#">Buraya</a>Geliyor</p>
</div>
Zaten, CSS ile bütün bu etiketlere class kullanmadan ulaşabiliyoruz… Örneklemek gerekirse;
div.icerik p {}
div.icerik p a {}
Başka bir classitis durumu;
<ol id="Navigasyon">
<li><a href="#" class="link">anasayfa</a></li>
<li><a href="#" class="link">hakkımda</a></li>
<li><a href="#" class="link">iletişim</a></li>
</ol>
Gereksiz kullanılmış class’ları görebiliyorsunuz değil mi? Doğrusu şöyle olmalıydı;
<ol id="Navigasyon">
<li><a href="#">anasayfa</a></li>
<li><a href="#">hakkımda</a></li>
<li><a href="#">iletişim</a></li>
</ol>
Yine CSS ile bütün bu etiketlere class kullanmadan ulaşabiliyoruz…
ol#Navigasyon {}
ol#Navigasyon li {}
ol#Navigasyon li a {}
Divitis ve Classitis vakalarında semptomlar yukarıda belirttiğim şekilde gerçekleşiyor. Bu hastalıklara dair ne yazık ki henüz bir ilaç geliştirilemedi. Öncelikle bu hastalığın farkına varmak, iyileşme sürecinin ilk adımını oluşturuyor
Fırından yeni çıkmış yazılardan haberdar olmak için RSS yayınıma abone olabilir ya da beni Twitter'dan takip edebilirsiniz.
Yorumla BakalımBu Makale için toplam 11 adet yorum bulunmaktadır...
Bu Makale 26 January, 2009 ve saat 18:12 itibariyle CSS, XHTML kategorisi altına kaydedilmiştir. Bu makale ile ilgili yorumları RSS 2.0 beslemesinden takip edebilirsiniz.. Bu makale için yorum yapabilir, veya kendi web sitenize trackback sağlayabilirsiniz...
26 January, 2009 ve saat 22:57:59'de gönderdi...
Gerçekten güzel ve bilgilendirici bir yazı olmuş. Teşekkürler.
29 January, 2009 ve saat 12:29:56'de gönderdi...
teşekkür ederim cyasam
12 February, 2009 ve saat 22:04:38'de gönderdi...
Güzel,bende bu hastalardan biriyim. İlk adımı attık
12 February, 2009 ve saat 22:45:38'de gönderdi...
Tedavine başladık o zaman desene
21 March, 2009 ve saat 04:59:18'de gönderdi...
tarayıcı farkıda olmayan bir yapı, neden kullanmaktan kaçtıysam bugüne kadar
gayet güzel örneklemişsin. saolasın.
21 March, 2009 ve saat 22:03:49'de gönderdi...
@huseyin, faydalı olmasına sevindim…
Kolay gelsin…
16 May, 2009 ve saat 17:14:20'de gönderdi...
vallahi çok güldüm, bu hastalıklarımızın sebebi sanırım CSS deyince doğrudan “hazıraol” moduna geçmemiz, bir yerden sonra insan kendini alamıyor. sonra bir bakıyoruz abartmısız.. bu özel CSS farkındalık dersi için çok teşekkürler..
24 May, 2009 ve saat 17:43:22'de gönderdi...
@joyologo ben teşekkür ederim,
Standartlara uyumlu web sayfaları hazırlamak demek anlamlı ve en okunur şekilde dokümanın hazırlanması demek aslında. Ne yazık ki, bazı tarayıcı problemleri nedeniyle ve görsel tasarımın gerçekleştirilmesinde ihtiyaç duyduğumuzda, bu fazladan div ve class kullanımını istemeden de olsa yapıyoruz.
Bir arabirim geliştiricisin bu noktada yanlışın farkında olması ve kendi kendini kontrol etmesi hastalıgın tedavisinde kilit noktayı oluşturuyor
24 May, 2009 ve saat 17:50:32'de gönderdi...
kesinlikle haklısın @oztecnic kontrol çok önemli katılıyorum. sitende bu konularla ilgili birbirinden güzel makalelerin olduğunu farkettim, siteni favorilerime ekliyorum detaylıca incelemek üzere, teşekkürler..
17 May, 2010 ve saat 03:07:54'de gönderdi...
Öncelikle, yazınız çok bilgilendirici ve güzel olmuş ellerinize sağlık.
Aslında bence bu hastalığımız biraz da bilgi eksiğinden kaynaklanıyor, genelde bir yapı öğrendiğimizde bu yapıya ait diğer taşlarıda öğrenmek yerine önceki öğrendiğimiz tasarımda gereksiz yere ısrarcı oluyoruz maalesef. Kimi zamanda garantici tavırlar takınıyoruz (ben bu yolu biliyorum aman diğeriyle hata yaparsam diye)
Ancak örneklerinizde de görüldüğü üzere bu yöntemler hem kod kalabalığını ortadan kaldırıyor hem de okunurluğu arttırıyor.
Neyse özet olarak bende tedavime başlamış bulunmanın keyfini sürmeye başladım diyelim..
23 May, 2010 ve saat 23:46:33'de gönderdi...
Tespitlerine katılıyorum @Alp, katkın için teşekkürler…