24 Temmuz 2015 Cuma

HTML5 Giriş

HTML Dersleri 
HTML5 Giriş



HTML5, World Wide Web Consortium W3C (W3C Web'in standartlarını belirleyen ve geliştiren uluslararası bir topluluk.) ile Web Hypertext Application Technology Working Group (WHATWG) işbirliğidir.  

HTML5, internet'in çekirdek teknolojilerinden HTML işaretleme standardının beşinci sürümüdür. Internet Explorer, Google Chrome, Mozilla Firefox ve Opera tarayıcılarının güncel sürümleri tarafından desteklenmektedir. HTML5, HTML dili için yeni stratejiler ve hedefler ortaya koyan ve farklı web tarayıcıları için standardizasyon sağlayan yeni nesi bir sürüm olarak karşımıza çıkmaktadır.  HTML geliştikçe gelişti ve yıllar geçtikçe CSS'in yeni özellikleri ile birlikte dördüncü sürüme kadar geldi. HTML4 her ne kadar yeterli gibi gözükse de CSS ile yazılan fazladan kodlar hatalara sebep oluyordu ve bunu önlemek için HTML5 geliştirildi. HMTL5 ile HTML dilinin işlevselliği, sunum ve programlama gücü artmıştır. Sadeleştirilmiş, düzeltilmiş HTML4 ve XHTML dillerinin son sürümüdür.

HTML5 ile gelen esnek yapı kod hatalarını en aza indiriyor hatta görmezden geliyordu. XHTML'deki küçük/ büyük harf duyarlılığı kalkmıştı. Bununla birlikte çok fazla kod sorunu kısmen çözüldü. CSS ile olan uyum sorunu düzeltildi ve beraberinde getirdiği yeni etiketler ile hem içerik ve görsele hem de arama motorlarına büyük kolaylıklar sağladı. HTML5 hala geliştirilme aşamasında olsa da bugün birçok web tasarımcısı artık bu yeni sürümü tercih etmektedir. Kısmen daha az kod yazma olanağı verse de HTML5 asıl gücünü PHP, ASP, ASP.net gibi web programlama dillerinden, JavaScript betik dilinden ve CSS'ten almaktadır.

HTML5 Neler Sunuyor?
  • Yeni Elementler
  • Yeni Özellikler (Attributes)
  • Full CSS3 Desteği
  • Video ve Ses
  • 2D/3D Grafikler
  • Yerel Depolama
  • Yerel SQL Veritabanı
  • Web Uygulamaları
HTML5'in Temel Yapısı

HTML5 <!DOCTYPE> Tanımlaması: HTML dosyamızın HTML5 özelliklerinde olacağını tanımlamak için şu etiket kullanılır.
<!DOCTYPE html> 

<!DOCTYPE> Nedir?
DOCTYPE'ın açılımı Document Type'dır yani Türkçe söyleyecek olursak Belge Tipi anlamına gelmektedir. Sayfa başında DOCTYPE kullanarak tarayıcıya o sayfanın hangi tipte bir belge olduğunu söylemiş oluyoruz.

<!DOCTYPE> Neden Gereklidir? 
HTML'in yeni yeni yaygınlaşmaya başladığı zamanlarda belli bir standart yoktu. O yüzden tarayıcılar kendi standartlarını oluşturmaya başlamıştı. W3C kuruluşu kurulduktan sonra web dünyasına belli standartlar getirildi. DOCTYPE ile de belgemizin hangi standartlarda olduğunu tarayıcıya bildiriyoruz ki belgemizi ona göre işlesin.
Temel özeliklere sahip bir HTML5 dosyası örneği:
<!DOCTYPE html>

<html>
<head>
<meta charset="UTF-8">
<title>Başlık</title>
</head>

<body>
İçerik......
</body>

</html> 

Bir HTML5 belgesi her zaman <!DOCTYPE> etiketi ile başlar ve ardından diğer etiketler tanımlanır. HTML5 ile belge türünü ayarlamak için kullanılan <!DOCTYPE> etiketi eski sürümlerdeki tanımlama karmaşasını kaldırmış  ve geriye doğru bir uyumluluk sağlamıştır. 

Şimdi önceki HTML sürümlerinde kullanılan <!DOCTYPE> tanımlamalarına bakalım ve HTML5 ile nasıl kısa ve kullanışlı bir hale geldiğini görelim.

XHTML 1.0 Transitional <!DOCTYPE> Tanımlaması
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
XHTML 1.0 Strict <!DOCTYPE> Tanımlaması
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
HTML 4.01 Transitional <!DOCTYPE> Tanımlaması
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
HTML5 <!DOCTYPE> Tanımlaması
<!DOCTYPE html> 
Gördüğünüz gibi HTML5 öncesi <!DOCTYPE> tanımlamaları oldukça uzun. Belge içerisinde <!DOCTYPE> tanımlası yapmazsak tarayıcı sayfayı Quirks Modda çalıştıracaktır.  Bir tarayıcı sayfayı Quirks Modda çalıştırır ise W3C standarlarına bağlı kalınmaz. Yani sayfa görünümü ve elemanların yerleşimi kullanılan tarayıcıya bağlı değişiklik gösterebilir. 

<!DOCTYPE> tanımlası bu noktada çok önemli. Tanımlama yapılmış ise tarayıcın sayfanın Standart Modda değerlendirilmesini ve göstermesini sağlamış oluyoruz. Bu mod HTML4 bildirimin no quirks mode olarak adlandırılmıştır. 

Kısaca <!DOCTYPE> etiketi ve farkını açıkladıktan sonra temel HTML5 kavramlarına devam edelim.

Character Set Bildirimi ve UTF-8
Temel örneğimizde meta etiketini head etiketleri arasında görüyorsunuz. Bu etiket sayfa hakkında tarayıcılara ve arama motorlarına bir takım bilgiler sunmaktadır. Bu etiketin charset özelliği ise sayfada kullanılan karakter kümesini tanımlamamızı sağlayan parametredir.
<meta charset="UTF-8">
Eski HTML sürümlerinde charset kullanımı yine daha zor ve uzundu, Örneğin:
HTML<META http-equiv="Content-Type" content="text/html; charset=UTF-8">

HTML5'de artık desteklenmeyen HTML elementleri: <acronym>, <applet>, <basefont>, <big>, <center>, <dir>, <font>, <frame>, <frameset>, <noframes>, <s>, <strike>, <tt>, <u>, <xmp> 

Yeni Gelen Elementleri:  <canvas>, <audio>, <video>, <progress>, <caption>, <header>, <nav>, <footer>, <article>, <aside>, <command>, <datalist>, <details>, <embed>, <figcaption>, <figure>, <hgroup>, <keygen>, <mark>, <meter>, <nav>, <output>, <rp>, <rt>, <ruby>, <section>, <source>, <summary>, <time>  

Bu elementlerin bir çoğunun işlevlerini az çok isimlerinden anlamışsınızdır. sonraki derslerde bu elementleri detaylı bir şekilde inceleyeceğiz.

HMTL5 Faydalı Linkler

Antik Çağ Yunan Dünyasında Tarih Anlayışı

FELSEFE Ders Notları 4
Tarih Felsefesi 1
Antik Çağ Yunan Dünyasında Tarih Anlayışı

Homeros ve Hesiodos
İlyada ve Odysseia, Homeros'un bilinen en önemli iki destanıdır. Bu destanlarda kahramanlık, din ve gelenek konuları ağırlıklı olarak yer tutmaktadır.

Hesiodos, MÖ 8. yüzyılda yaşamış olan, Antik yunan tarih düşüncesini ana hatlarıyla ortaya koyan ilk düşünürdür.

Hesiodos'un yapıtları: Theogonia, İşler ve Günler

Hesiodos; zaman ilerledikçe insanların tanrılardan uzaklaştıkları, bozuldukları ve kötüleştikleri görüşündedir. Hesiodos "İşler ve Günler"  adlı eserinde insanın geçmişi ve geleceği konusunda kendi öngörülerini ele almıştır.  

Thegonia'da evrenin oluş sürecini,  tanrıların özelliklerini ve görevlerini, insanın ortaya çıkışını ele almış, tanrıların tarihini anlatmıştır. 

Hesiodos'un Çağlar Öğretisi
Hesiodos çağlar öğretisinde çağlar ve çağların özellikleri üzerinde durmuştur. 
  • Altın Soylular Çağı - Altın Çağ: İnsanları en mükemmel olan çağ.
  • Gümüş Soylular Çağı - Gümüş Çağ: Bu çağ'da doğan çocuklar yüzyıl boyunca çocuk kaldıktan sonra başlarıdertten kurtulmayan, ölçüsüz,, saygısız, kavgacı kişiler olurlarmış.
  • Tunç Soylular Çağı: İşleri güçleri saldırmak ve öldürmek olan, korkunç, kuvvetli, sonunda birbirlerini yok etmiş olan insanların çağı.
  • Dördüncü Soy: Zeus'un yarattığı yeni nesil, tunç ve gümüş çağının insanlarından daha doğru, daha yürekli, yarı tanrısal özelliklere sahip olmuş, çetin savaşlarda büyük kargaşalarda yaşama veda etmişlerdir. Hesiodos'a göre bu nesilden bazılarını Zeus Okeanos'un çevresindeki adalara yerleştirmiş ve mutlu bir yaşam sürmelerini sağlamıştır.
  • Beşinci Soy (Demir Soyu): Hesiodos'un yaşadığı çağ. Hesiodos, beşinci soy'un, insanlarını gündüzleri didinip ezilen, geceleri kıvranan, sürekli belalarla uğraşan, çok az sevinç yaşayan kimseler olarak anlatmıştır.
  • Altıncı Soy: İnsanları en bozulmuş ve en kötü toplumlardan oluşan çağ. Hesiodos kendinden gelen soyu insanlığın çöküşü olarak görmüştür. Güçlü olanın haklı sayıldığı, kötülerin ve halaksızların sürekli arttığı bir ortamda utanma duygusu kalanlar tanrılara sığınırken, insanlar acılarla baş başa kalacaktır.
Pindaros
Pindaros, Olympian Odes'da Rodos'un efsaneye dayalı tarihini anlatmıştır.Pindaros Antik Yunan medeniyetinin ozan - düşünürlerindendir.  İlk kez tarih olaylarını zaman boyutunda değerlendirmiştir.

Tarih Felsefesi Nedir?

FELSEFE Ders Notları 4
Tarih Felsefesi 1
Tarih Felsefesi Nedir?


Tarih Felsefesinin Anlamları
Eski Yunancadaki historein sözcüğü araştırma yoluyla bilme ve öğrenme, hikayeleme ve tarih anlamlarına gelmektedir.

İslam medeniyetlerinde tarih, tanık olunmuş olayları kayıt altına almak üzere yıllıklar yazma anlamında kullanılmıştır. 

Ayhan Bıçak'a göre tarih, şimdi ile geçmiş arasındaki ilişkilerin nasıl olduğunu gösteren yol haritasıdır.

Tarihin Çağımızdaki Anlamları
  • Zaman Dizinsel Anlam (Kronolojik)
  • Geçmişin tümü olan tarih
  • Geçmişe ilişkin araştırmalar yapan bir çalışma alanı olarak tarih
Vico, ilkel insanın başlattığı gelişmelerden ne çıkacağını önceden gördüğü fikrini temelsiz bulmaktadır. Vico'ya göre tarih salt insan zihninin bir ürünü değildir, insan doğası ancak tarih aracılığıyla anlaşılabilmektedir.

Raymond Aron, tarihe dar anlamıyla insan geçmişinin bilimi, geniş anlamıyla kültürün, türlerin, gökyüzünün ve yeryüzünün araştırılması tanımını getirmiştir. Bu tanımlamayı yaparken de doğa ve insan ilişkisini göz önünde bulundurmuştur.

Excel’de ayırıcıları kullanmadan hücre içeriğini nasıl dağıtabiliriz?

Bu işlemi gerçekleştirmek için Excel’de MID Formülü (Türkçe Office için karşılığı PARÇAAL) kullanacağım. MID ( PARÇAAL) kullanımı hakkında bilgi için Excel’de Metinden Belirli Sayıda Karakter Alma | MID - PARÇAAL Formülü başlıklı yazıma gözatabilirsiniz.

Örnek 1: A1: BAYRAKTAR A2: 35660633 A3: HP4340S içeriklerini sütun bazlı dağıtalım.

Örneğimizde Adı "A1,A2,A3" hücre içeriklerini sütunlara dağıtmak için ilk olarak B1 hücresine gelip formülüzü girelim: =MID($A1;COLUMNS($A$1:A1);1)


Ardından dolgu boş hücreleri işaretleyene kadar hücrelerin üzerine doğru sürükleyin ve A1 hücresindeki içeriğin J1 hücresine kadar birer birer dağıtıldığını göreceksiniz.


Aynı  şekilde sürükleme işlemini yaptığınız her sütün için formül geçerli olacaktır.


Örnek 2: A1: BAYRAKTAR b2: 35660633 A3: HP4340S içeriklerini satır bazlı dağıtalım.
Satır bazlı  dağıtmak için ilk olarak A2 hücresine gelip formülüzü girelim: =MID($A$1;ROW($A1:A1);1) kullanücresine gelip bu formülüzü girelim: =MID($A1;COLUMNS($A$1:A1);1) 
Ardından yine dolgu boş hücrelerini işaretleyene kadar hücrelerin üzerine satır bazında sürükleyin. Sürükleme işlemini yaptığınız her sütün için formül geçerli olacaktır.
NOT: Örnekler MS Office Excel 2013 İngilizce üzerinde yapılmıştır. Türkçe Office üzerinde MID yerine PARÇAAL ROWS ve COLUMNS ifadeleri yerine ise SATIRSAY - SÜTUNSAY kullanınız.

23 Temmuz 2015 Perşembe

HTML Meta Etiketleri (Meta Tags)

HTML Dersleri  
HTML Meta Etiketleri (Meta Tags)

Sayfanın HEAD alanında kullanılan meta etiketleri (tags) tarayıcılara, arama motorlarına, robotlara, link analiz vb. programların hepsine sayfa hakkında ihtiyaç duydukları bilgileri sağlar. Bu bilgiler, meta etiketinin name özelliğinin ismini, content özelliğinin değerini oluşturduğu isim-değer çifti olarak sağlanır. Kısaca bu etiketler bir web sayfasında bilgi vermek ve browserları yönlendirmek amacıyla kullanılır.

Meta Etiketlerinin SEO Etkisi
Meta etiketleri eski dönemlerde SEO (Arama Motoru Optimizasyonu) için çok büyük önem taşımaktaydı. Keywords ve description meta etiketlerine yazılan bir kelimede sitenin sayfa arama motorundaki yerini alabiliyordu. Fakat arama motorlarının zamanla gelişmesinden dolayı artık meta etiketleri aracılığı ile arama motorlarında bir yerlere gelebilmek durumu tarih oldu. Bu durum özellikle Google açısından böyledir.

Meta etiketleri içerdiği kelimelerde üst sıralara taşıma etkisini yitirmiştir fakat bir web sayfası için her zaman önemli bir öğe olma niteliğini yitirmeyecektir. Meta etiketlerini kullanarak üst sıralara çıkmak beklenemez fakat meta etiketleri olmayan bir sayfa eksiktir. 

NOT: Tüm meta etiketleri <head> .. </head> kodları arasına yazılır. XHTML standartlarına göre, meta etiketleri > ile değil /> ile kapatılmalıdır.

Temel Meta Etiketleri ve Kullanımları (Bunların dışında da birçok meta etiketi mevcuttur.)

title: Aslında bir Meta Etiketi değildir. Fakat meta etiketi şeklinde kullanımı vardır ve aynı kategoridedir. Sayfanın başlığını verir ve Google açısından en önemli etikettir. Buraya yazılanlar tarayıcının üst bilgi kısmında, arama motorunda sayfa listelenirken ve sayfanız sık kullanılanlar gibi bir yere kaydolurken gözükecek olan kısımdır. Sayfa içeriği ile ilgili en uygun başlık yazılmalıdır. HEAD etiketi içerisine yazılır.
<title>İbrahim Bayraktars' Blog</title>

abstract: Tüm site hakkında bilgi veren cümledir. Sayfanın kısa özetinin belirtilmesini sağlar.
<meta name="Abstract" content="Site özeti" />

author: Site yapımcısının adı, iletişim bilgilerinin bulunduğu etikettir.
<meta name="author" content="İbrahim B., leucjo@gmail.com" />

copyright: Sitenin telif hakları konusunda bilgi veren etikettir.
<meta name="copyright" content="(c) 2013 İbrahim B. (ibrahimbayraktar.net) Tüm Hakları Saklıdır." />

description: Sayfa ile ilgili açıklama girilen kısımdır. Olması çok önemlidir. Çoğu zaman arama motorları açıklama kısımlarında sizin buraya yazdığınız yazıyı görüntülerler. Mümkün olduğu kadar kısa ve içerikle ilgili bilgi veren bir yazı girilmelidir.
<meta name="description" content="Sitenizin içeriği hakkında geniş bilgi" />

expires: Sitenin içeriğinin hangi tarihte zaman aşımına uğradğını arama motorlarına ileten etiket.Son geçerli olduğu tarihi GMT formatında belirtir. Sayfayı daimi olarak geçersiz kılmak için content özelliğine '0' değeri atanmalıdır.
<meta name="expires" content="Thu, 23 July 2015 20:55:05 GMT" />

keywords: Arama motorlarının temel aldığı, sitenizin içeriğini oluşturan kelimelerin bulunduğu etiket. Fazla anahtar kelimenin olması zarar getirebilir. Birkaç anahtar kelime girilmesi yeterli olacaktır.
<meta name="keywords" content="kelime1 kelime2 kelime3 kelime4 kelime5" />

content-language: Sayfanın hangi dilde yayın yaptığının, sitenin varsayılan dilini belirten etiket bilgisini verir.
<meta name="content-language" content="tr" />

content-type: Güncel sayfanın içerik tipini ve karakter setini belirtir.  Aşağıdaki örnek, sayfa içerik tipinin "text/html" ve karakter setinin "UTF-8" olarak belirtilmesini gösterir.
<meta name="content-type" content="text/html charset=utf-8" />
<meta http-equiv="content-type" content="text/html charset=utf-8" />
 
revisit-After Tag: Arama motorlarına, sitenin içeriğinin kaç günde bir güncellendiğini ileten etiket.
<meta name="revisit-after" content="7 days" />

refresh: Belirtilen süre sonunda belirtilen bir URL adresinin yüklenmesini sağlar. URL adresi belirtilmezse güncel sayfa adresi tekrar yüklenir.  Aşağıdaki örnek, her 10 saniyede bir güncel sayfanın tekrar yüklenmesini gösterir.
<meta name="refresh" content="10" />
 
Aşağıdaki örnek, sayfa yüklendikten 30 saniye sonra "http://www.ibrahimbayraktar.net" adresinin yüklenmesini gösterir.
<meta name="refresh" content="30;http://www.ibrahimbayraktar.net" />

redirect: Sayfanın, belli bir zaman sonra başka bir sayfaya yönlenmesini sağlar. Örnekte, sayfa 10 saniye sonra google'a yönlenir.
<meta http-equiv="refresh" content="10;url=http://www.google.com.tr" />

robots: Arama motoru robotlarının,  site içerisindeki linkleri takip edip etmeyeceklerini gösteren etikettir. Sayfanın arama motorlarında listelenip listelenmemesini bu tag ile belirleyebiliyoruz. Bu tagın alternatifi olarak robots.txt dosyası da bu işlevi görebiliyor.

Sayfanın indexlenmesini istiyorsak
<meta name="robots" content="index, follow" />

Sayfanın indexlenmesini istemiyorsak
<meta name="robots" content="noindex,nofollow" />

content özelliğinin alabileceği diğer değerler:
  • archive: Sayfanın ön izleme için ekran görüntüsünün oluşturulmasını bildirir.
  • noarchive: Sayfanın ön izleme için ekran görüntüsünün oluşturulmasını engeller. Daha önce oluşturulduysa silinmesini sağlar. (Önizlemenin silinmesi arama motorlarına göre farklılık gösterebilir.) 
  • all: Tüm olumlu bildirimleri uygular. Arama motorları index, follow ve archive bildirimlerinden farklı bildirimleri de kabul ediyor olabilir. Bu yüzden arama motorunun yardım/destek sayfasına bakmalısınız. 
  • none: Sayfanın gözardı edilmesini bildirir. 
  • noodp: Eğer sayfa DMOZ dizininde kayıtlı ise arama sonuçlarında DMOZ dizinindeki açıklamanın yerine sayfanın kendi açıklamasının kullanılmasını sağlar.  
HTML Meta Etiketleri Faydalı Linkler:
www.wordstream.com/meta-tags
Google'ın anladığı meta etiketler
computerhope.com/jargon/m/metatags.htm
List of Usable HTML Meta and Link Tags
complete-list-of-html-meta-tags

Copyright 2013-2017 | İbrahim BAYRAKTAR /dev/null Web Günlüğü