HTML 5
(Bu makalem ocak 2012 mobillife dergisinde yayınlanmıştır)
Uzun zamandır bahsettiğim HTML 5’in teknik detaylarına değinmenin zamanı geldi sanırım. HTML 5 bundan önceki sürümlerine pek çok yeni özellik ilave ederek geliyor. Aslında HTML 5 ile birlikte her 10 yılda bir kırılma yaşayan web’in görsel arabirim alt yapısı yeniden tanımlanıyor denebilir.
Uzun zamandır bahsettiğim HTML 5’in teknik detaylarına değinmenin zamanı geldi sanırım. HTML 5 bundan önceki sürümlerine pek çok yeni özellik ilave ederek geliyor. Aslında HTML 5 ile birlikte her 10 yılda bir kırılma yaşayan web’in görsel arabirim alt yapısı yeniden tanımlanıyor denebilir.
Halen geliştirilme aşamasında olan ve epey de bu aşamada kalacak olan HTML 5; bulut- pc-mobile-smart devices teknolojilerinin - css ile birlikte- arabirimini sağlayacak teknikleri, web’in doğal tag’lama (etiketleme) alt yapısıyla sunan yeni bir HTML sürümü.
Daha yalın anlatmak istersem; HTML ve javascript bir karışım olan HTML5 kolay etiketlemeler vasıtasıyla bir browser üzerinde animasyon, video, navigasyon gibi yeni nesil arabirimleri kolayca oluşturmamızı sağlayan yeni teknikler-etiketlemeler sunuyor.
Böyle bir şeye ihtiyaç vardı çünkü artık browser üzerinden talep edilen şeyler oldukça fazlalaşmıştı. Örneğin bir navigasyon-haritalama işinin daha kolay yapılması isteniyordu. Bir video’nun sadece bir tag’la ilave edilmesi neden olmasın ki? Veya animasyonları neden doğal etiketlemeler ve bir takım javascript alt yapılarla oluşturmayalım? Böylece kimse kendine ait standartlaşmalar yoluna gitmez. Henüz geliştirme aşamasında olan ve daha uzun bir süre bu aşamada olacak olan HTML 5 şu anki haliyle bile pek çok soruna çözüm üretmiştir. Artık pek çok site HTML5 standartlarına dayalı yapılıyor.
HTML5 sadece yukarıda içerdiğim popüler maddeleri kapsamıyor tabii ki, aslında alt yapısal olarak pek çok farklı yapıyla geliyor. Tarihsel sürece ve bütün bu alt yapısal teknik konularla kafa karıştırmadan doğrudan işin pratik yönlerini sizinle paylaşacağım.
Öncelikli olarak şunu belirtmeliyim HTML5 kodlarınızın (etiketleme) çalışması için browser’ımızın HTML 5 uyumlu olması gerekiyor. Günümüzdeki hemen her browser en yeni sürümleriyle HTML 5’i desteklemektedir. Bazısı bazı HTML5 özelliklerini desteklerken bazısı desteklememektedir.
Bunun sebebi de şudur. HTML5 halen geliştirilme aşamasındadır. Browser üreticileri her yeni sürümde bazı yeni özellikleri eklemektedir. Dolayısı ile mutlak bir ortak uyumluluktan şu an için söz etmek zor. Ancak pek çok bilinen HTML5 özelliğini hemen her bilinen browser desteklemektedir.
Browser’ınızın Hangi HTML5 özelliklerini desteklediğini öğrenmek istiyorsanız, bunun için pek çok site var. Bunlar karşılaştırmalı tablolar sunarak hangisinin hangi özelliği desteklediğini detaylı olarak gösteriyor. Daha pratik bir site de http://www.html5test.com/ bu siteye girdiğinizde, kullandığınız browser’ın hangi HTML5 özelliklerini desteklediğini maddeler halinde görebiliyorsunuz. Hatta daha da ileri gidip bir puanlama da yapıyor.
aşağıya doğru uzun bir liste olan HTML5 elemanlarını destekleme puanlamasından 314 almış Firefox 8.01 sürümü.
Aynı test’i chrome 16.0.912.63 sürümüyle yaptığımızda:
343 almış. Detayları dikkatlice incelerseniz HTM5 ile ilgili yenilikleri görürsünüz. Buradan da anlaşılacağı üzere HTML5 bazı özelliklerini bazı browser sürümleri desteklerken bazıları desteklememektedir. Ancak temel HTML 5 elementlerinin hemen her browser’ca desteklendiğini tekrar vurgulamakta fayda var. Ben de zaten ağırlıklı olarak Temel özelliklerden bahsedeceğim.
HTML 5’ in temel yapısı
HTML5 ile ilgili kaynakları incelediğinizde hemen hepsi semantik bir yapıya sahip olduğundan bahseder. Peki nedir semantik yapı?
Burada semantik kavramı en basit, temel anlamıyla kullanılmıştır. Yani HTML5 tagları aslında ne dediklerini ifade ederler. Mesela HTML5
Veya footer


















