... konulu sunumlar: "Yrd. Doç. Dr. Murat Olcay ÖZCAN"— Sunum transkripti:
1Yrd. Doç. Dr. Murat Olcay ÖZCAN HTML 5 ve CSS 3Yrd. Doç. Dr. Murat Olcay ÖZCAN
2HTML HTML web sayfalarını tanımlayan bir işaretleme dilidir. HTML (Hyper Text Markup Language) açılımı Hiper Metin İşaretleme DiliHTML dosyaları HTML etiketleri ile tanımlanır.Her HTML etiketi farklı bir dosya içeriğini tanımlar.
3HTML Etiketleri Yapı şu şekildedir. <etiket_ismi>içerik</etiket_ismi>Genel olarak çift olarak kullanılırlar. Bir açılış etiketi ve bir kapanış etiketi bulunur.<p>Paragraf</p> gibiKapanış etiketi / ile kapatılır.
5Bir HTML Örneğidoctype tanımlaması sayfanın bir html belgesi olduğunu gösterir.<html> ve </html> arasındaki metin html belgesini tanımlar.<head> ve </head> arasındaki metin belge hakkında bilgi verir.<meta> etiketi ile karakter seti tanımlanır.<title> ve </title> arasındaki metin belgenin başlığını tanımlar.<body> ve </body> arasındaki metin görülebilir sayfa içeriğini tanımlar.<h1> ve </h1> arasındaki metin bir başlığı ifade eder.<p> ve </p> arasındaki metin bir paragrafı ifade eder.
8Brackets Açık kaynak kodlu, ücretsiz ve modern bir editör. *Renklendirme ve canlı önizlemenin çalışması için öncelikle sayfanın html uzantılı olarak kaydedilmesi gerekir.
9HTML BaşlıklarıHTML başlıkları <h1> den <h6> ya kadar olan etiketler ile tanımlanır. Başlıklar her zaman koyudur ve kendi başına bir paragraftır.<h1>Bu bir başlıktır</h1><h2>Bu bir başlıktır</h2>…<h6>Bu bir başlıktır</h6>
11Paragraf Etiketi <p> Paragraf açmak için <p> etiketi kullanılır. Oluşturulan her paragraf arasında bir miktar uzaklık bulunur.<p>Bu bir paragraftır</p><p>Bu da başka bir paragraf</p>
12Yeni Satır <br> ve Yatay Çizgi <hr> Etiketleri Yeni bir paragraf açmak yerine, aynı paragraf içinde aralıksız yeni bir satır açmak için <br> etiketi kullanılır.Sayfa üzerinde yatay düz bir çizgi çizmek için <hr> etiketi kullanılır.<p>Bu bir paragraftır<br/>hemen altında olsun bu da</p><p>Bu da başka bir paragraf</p><hr/>Bu iki etiket kapatma etiketleri olmayan iki etikettir.HTML 5 için <br> ya da <hr> şeklinde kullanılabilirler. Ancak XHTML uyumluluğu açısından <br/> ve <hr/> olarak kullanılması tavsiye edilmektedir.
13HTML Metin Biçimlendirme Metni önemli yapmak (koyu) için <strong> etiketiMetni vurgulamak (italik) için <em> etiketiMetni farklılaştırmak (altıçizili) için <u> etiketiHatalı ve silinmiş metin (üstü çizili) için <del> etiketi
14HTML Metin Biçimlendirme II Metni arkası renkli vurgulamak için <mark> etiketiMetni alt simge yapmak için <sub> etiketiMetni üst simge yapmak için <sup> etiketi
15HTML Listeleri (Sıralı Listeler) Sıralı bir liste için <ol> etiketi kullanılır. Listedeki her eleman için ise <li> etiketi kullanılmalıdır.<ol><li>Kahve</li><li>Çay</li><li>Süt</li></ol>
16HTML Listeleri (Sıralı Listeler) II Sıralama işaretini değiştirmek için <ol> etiketinin type özelliği, başlangıç değerini belirlemek için start özelliği kullanılabilir.type özelliğinin alabileceği değerler şunlardır: 1 A a I i
17HTML Listeleri (Sırasız Listeler) Sırasız bir liste için <ul> etiketi kullanılır. Listedeki her eleman için ise <li> etiketi kullanılmalıdır.<ul><li>Kahve</li><li>Çay</li><li>Süt</li></ul>
18HTML Listeleri (Sırasız Listeler) II Sıralama işaretini değiştirmek için <ul> etiketinin style özelliği kullanılabilir. Alabileceği değerler şunlardır:list-style-type:disclist-style-type:circlelist-style-type:squarelist-style-type:none
19HTML Yorum EklemekHTML kodunun içine tarayıcı tarafından gösterilmeyecek yorumlar şu şekilde eklenir.<!– Buraya yorumunu yaz -->Hatırlatıcı notlar eklemek için de kullanılabilir.
20HTML Etiketleri Genel Özellikler (Global Attributes) Tüm html etiketleri için kullanılabilecek genel özelliklerden bazıları şunlardır.title : bir etiket ile ilgili ekstra bilgi vermek için kullanılır.<p title="Üniversite tarihçesi bu paragrafta">Üniversitemiz 2007 yılında…. </p>lang : bir etiketin içeriğinin hangi dilde olduğunu tanımlar<html lang="tr">…….</html>style: satır içi CSS tanımlaması yapılır.Class: stil sayfasındaki bir sınıf tanımlanır.
21HTML StilleriHer HTML elementi için varsayılan stil beyaz arkaplan ve siyah yazı rengidir.style özelliği kullanılarak bu varsayılan stil değiştirilebilir.Kullanımı:<etiket style="özellik:değer">Özellik bir CSS özelliği, değer de bir CSS değeri olmalıdır.
22Yazı Rengini Değiştirmek color isimli CSS özelliği ile metnin rengi değiştirilebilir.
23HTML’de Renkler HTML’de renkler 3 farklı yöntemle tanımlanabilir. Renk isimleri: 140 tane tanımlı renk ismi vardır.yellow, green, pink, aqua, cyan, darkgray, lightblue vs…Onaltılık(hexadecimal) renk kodu: #RRGGBB şeklinde bir rengin RR(kırmızı), GG(yeşil) ve BB(mavi) değerlerinin 16lık sayı sistemine göre girilmesi ile oluşturulur.#FFFF00, #008000, #FFC0CB, #00FFFF vs…RGB renk kodu: rgb(red, green, blue) şeklinde bir rengin kırmızı, yeşil ve mavi değerinin arasında tanımlandığı yöntemdir.rgb(255, 255, 0), rgb(0, 128, 0), rgb(255, 192, 203)140 renk ve hex kodları:
24Brackets’da Renk Kullanımı Brackets’da bir renk tanımlamasının üzerine gelerek, fare sağ tuşuna basıldığında gelen menüde Hızlı Düzenle seçildiğinde;Gelen araç yardımıyla istenilen renk seçilebilir/değiştirebilir yada renk kodları görülebilir.
25Yazıtipini (Font) Değiştirmek font-family isimli CSS özelliği ile metnin yazıtipi değiştirilebilir.
26Yazı Boyutunu Değiştirmek font-size isimli CSS özelliği ile metnin boyutu değiştirilebilir. 3 farklı tipte değer belirlenebilir.px: piksel büyüklüğü ile tanımlama yapılabilir. Mutlak tanımlamadır. HTML sayalarında varsayılan değer 16px’dir.em: sayfada kullanılan yazı büyüklüğü 1em olarak kabul edilir ve bu büyüklüğe göre tanımlama yapılabilir. 0.8em yada 2.7em gibi.Yüzdesel tanımlama (%): Bir üst düzeydeki büyüklüğe göre yüzdesel olarak tanımlama yapılabilir. %150 yada %300 gibi.
27Yazı Stil ve Kalınlık Değiştirme font-style isimli CSS özelliği ile yazı stili değiştirilebilir. Şu değerleri alabilir.normalitalicobliquefont-weight isimli CSS özelliği ile metin kalın yapılabilir. Şu değerleri alabilir.boldbolderLighter100, 200, …., 900 e kadar değerlerinitial
28Metin hizalamatext-align isimli CSS özelliği ile metnin boyutu değiştirilebilir. 4 farklı tipte değer belirlenebilir.centerleftrightjustifyinitial
29HTML’de Resim EklemekBir sayfaya resim eklemek için <img> etiketi kullanılır. Bu etiketin kapanış etiketi yoktur. Eklenecek resim kaynağı etiketin src özelliği kullanılarak tanımlanır.Eklenecek resmin yeri eklendiği sayfanın yerine göre tanımlanır.Eğer aynı dizinde bulunuyorsa resmin sadece ismini yazmak yeterlidir.<img src="urun.jpg">Bir alt dizininde ise; <img src="resimler/urun.jpg">Bir üst dizininde ise; <img src="../urun.jpg">İnternette bir adreste bulunan resim de kullanılabilir.<img src="https://tr.wikipedia.org/wiki/Apple#/media/File:AppleTV_top2.png">
30HTML’de Resim Eklemek II <img> etiketi ile kullanılabilecek diğer özellikler şunlardır:alt: resim gösterilmediği durumda resmin olduğu yerde görünecek yazıheight: resmin yüksekliği piksel olarak belirtilebilir.width: resmin genişliği piksel olarak belirtilebilir.style özelliği ile yükseklik/genişlik değerleri ve fazlası değiştirilebilir.
31HTML’de LinklerBir web sayfasından diğerine geçmek için linkler kullanılır.Bir metin ya da resmin üzerine tıklanarak geçiş yapılabilir. Tıklanabilecek içerik <a> etiketi ile tanımlanır.Tıklama sonucu geçilecek sayfa ise href özelliği ile belirlenir.<a href="http://www.klu.edu.tr">Kırklareli Üniversitesi Web Sayfası</a>Yerelde (aynı sunucu üzerinde) bir link verilecekse dosya ismi vermek yeterlidir. Resimlerde olduğu gibi linkin verildiği sayfaya göre yönlendirme yapılır.<a href="index.html">Anasayfaya Git</a>target özelliği kullanılarak açılacak sayfanın yeni bir tarayıcı penceresi/sekmesinde açılması sağlanabilir.<a href="index.html" target="_blank" >Yeni sekmede aç</a>
32HTML Sayfa İçi LinklerAynı sayfa içindeki bölümlere de link verilebilir.Bunun için ilk olarak sayfa içindeki bir etiket id özelliği ile işaretlenmelidir.<h2 id="sss">Sıkça Sorulan Sorular (SSS)</h2>Sayfanın başka bir kısmında ise şu şekilde link verilebilir.<a href="#sss">Sıkça Sorulan Sorulara GİT</a>Başka bir web sayfasından link verirken ise şu şekilde bu bölüme link verilebilir.<a href="yardim.html#sss">Sıkça Sorulan Sorulara GİT</a>
34HTML’de Tablolar Tablolar <table> etiketi ile tanımlanır. Tablo içinde bir satır oluşturmak için <tr> etiketi;Satırların içinde içeriğin bulunacağı hücreleri oluşturmak için <td> etiketi kullanılır.Tablo başlıkları için ise <th> etiketi de kullanılabilir.
35Tabloları Biçimlendirmek Çerçeve için CSS border özelliği kullanılabilir.<th> ve <td> etiketleri için hücrenin kaç sütun kaplayacağı colspan; kaç satır kaplayacağı ise rowspan özelliği ile tanımlanır.
36Iframe Etiketi<iframe> etiketi bir websayfasının içine başka bir web sayfası eklemek için kullanılır.Youtube sitesinden bir videoyu sitemize eklemek için de kullanabiliriz. Bu etiket http üzerinden çalışmaktadır.
37HTML BloklarTüm HTML etiketleri için varsayılan bir görünüm değeri vardır ve blok yada satıriçi olarak belirtilir.Blok tipindeki etiketler her zaman yeni bir satırda başlar ve tüm satır boyunca mümkün olan tüm genişliği kullanır. Örnek bazı etiketler:<div><h1> - <h6><p>Satıriçi etiketler ise yeni satırda başlamaz ve sadece gerekli genişlik kullanır. Örnek bazı etiketler:<span><a><img>
38<div> Etiketi<div> etiketi html dökümanındaki division (bölüm) ı temsil eder. Diğer html elemanlarını ihtiva eden bir blok yapı olarak genelde stil vermede kullanılır.Kendi başına sayfa içeriğine hiçbir etkisi yoktur, ancak CSS ile beraber kullanıldığında içerik bloğunu biçimlendirilmesinde kullanılır.
39<span> Etiketi<span> etiketi genel olarak bir metni ihtiva eder ve bu metne stil vermede kullanılır.Kendi başına sayfa içeriğine hiçbir etkisi yoktur, ancak CSS ile beraber kullanıldığında içerik metninin biçimlendirilmesinde kullanılır.
40CSS (Cascading Style Sheets) HTML elemanlarının nasıl gözükeceğini tanımlar.Bir çok sayfadan oluşan bir web sitesinin aynı düzende gözükmesini sağlar.Bir sitenin CSS kodları tek bir dosyada toplandığında, sadece o dosya değiştirilerek tüm sitenin görünüşü, düzeni değiştirilebilir.head etiketi içinde açılan style etiketinden sonra o sayfaya ait CSS tanımlamaları yapılabilir.Genel tanımlama yapısı bir seçici ve bir tanımlayıcı kısımdan oluşur. Seçici bir HTML elemanını işaret eder. Tanımlanan farklı CSS özellikleri ; ile ayrılır ve { } parantezleri arasına yazılır.h1 {color:blue;font-size:12px;}
42Diğer Seçiciler (class ve id) Bir HTML etiketine CSS özellikleri tanımladığımızda sayfa içindeki bu etiketin tüm kullanımları etkilenir.CSS tanımlanan etiketin tüm kullanımlarının etkilenmemesi için yada istenen CSS özelliğinin istenen etikete uygulanabilmesi için iki farklı CSS seçici tanımlaması daha bulunmaktadır.class seçicisiHer etiket için genel bir özellik olan class özelliği ile tanımlanır.id seçicisiHer etiket için genel bir özellik olan id özelliği ile tanımlanır.
43Class SeçicisiCSS tanımlama kısmında oluşturulan sınıfın başına . konarak tanımlanır. Etiketi bu sınıfla ilişkilendirmek için, etiketin class özelliği kullanılır.Sadece belli bir etikete ait bir sınıf da oluşturulabilir.
44Id SeçicisiCSS tanımlama kısmında oluşturulan sınıfın başına # konarak tanımlanır. Etiketi bu sınıfla ilişkilendirmek için, etiketin id özelliği kullanılır.
45CSS de YorumlarCSS kodları içinde yorumlar /* ve */ arasında belirtilir.Birden fazla satır da kaplayabilirler.
46CSS Linkler (Bağlantılar) Linkler ile herhangi bir CSS özelliği kullanılabilir. (color, font-family, background, … gibi)Bunun dışında linklerin bulunabileceği dört durum varolup, bu durumlar için de tanımlama yapılabilir. Bu dört durum şunlardır:a:link – normal, ziyaret edilmemiş linka:visited – ziyaret edilmiş linka:hover – fare imleci linkin üzerinde olduğu duruma:active – linke tıklandığı andaki durum
48CSS Öncelik SırasıBir etiket için aynı CSS özelliğine ait birden fazla tanımlama yapıldığında en son yapılan tanımlama geçerlidir.Örneğin bir CSS dosyası içinde yapılan tanımlama, sayfanın head kısmında değiştirilirse son değişiklik geçerlidir.CSS dosyası iç tanımlamaBu durumda başlık turuncu renkte olacaktır.Eğer h1 etiketi içine satıriçi bir stil tanımlaması yapılırsa, bu yeni tanımlama geçerli olur. Başlık sarı hale gelir.<h1 style="color:yellow">Başlık</h1>
49HTML 5 Yeni Etiketler Yeni etiketlerden en çok dikkat çekenleri: Yeni anlamsal etiketler:<header>, <footer>, <article>, <section> … gibi.Yeni multimedya etiketleri:<audio> ve <video>Yeni form özellikleri:number, date, time, calendar, range.Yeni grafik etiketleri:<svg> ve <canvas>
50Yeni Anlamsal (Semantic) HTML5 Anlamsal etiketler kelime anlamıyla tarayıcı ve geliştiriciye bilgi veren etiketlerdir.HTML5 ile gelen yeni anlamsal etiketler tek başlarına sayfa içeriğine etki etmemektedir. Genelde CSS ile birlikte kullanılırlar. Sayfa şablonu oluşturmada <div> kullanımını azaltarak, tarayıcı ve programlama dostu bir yapı sağlamak amacıyla kullanılırlar.Bu etiketlerden bazıları ve anlamları:<header> - başlık kısmını tanımlar<nav> - sayfalar arası geçiş ve menü<section> - bir bölümü ifade eder<article> - bir bölüm içindeki ilgili haber/yazı/makale<aside> - sayfa içeriği dışında bir içerik (reklam, linkler gibi)<footer> - sayfa ya da bölüm sonu
51HTML Video<video> etiketi ile web sayfalarına video eklenebilir. Eklenecek video için width ve height özellikleri belirtilmesi yararlı olur.controls özelliği ile video oynatma-durdurma, ses, tam ekran gibi kontroller eklenebilir.autoplay özelliği kullanıldığında videe otomatik olarak sayfa yüklendiğinde oynatılır.Etiket içindeki yazılar etiketin desteklenmediği durumlarda gösterilir.
53Track etiketi ile altyazi <track> etiketi ve WEBVTT dosya formatı kullanılarak videoya altyazı eklenebilir.WEBVTT dosya içeriği örneği:
54HTML Audio<audio> etiketi ile web sayfalarına ses dosyaları eklenebilir.controls özelliği ile oynatma-durdurma, ses yüksekliği gibi kontroller eklenebilir.autoplay özelliği kullanıldığında videe otomatik olarak sayfa yüklendiğinde oynatılır.Etiket içindeki yazılar etiketin desteklenmediği durumlarda gösterilir.
56HTML Object ve EmbedWeb sayfasının içine Flash, pdf, Java Applet, HTML dosyaları eklemek için kullanılır.Flash dosyası eklemek
57HTML Form Etiketi<form> etiketi kullanıcı girişi için kullanılan bir etikettir. Kullanıcı girişi bu etiket içinde tanımlanan diğer form elemanları aracılığıyla meydana gelir.Bu etikete ait action özelliği ile formdan toplanan verilerin hangi sayfaya gönderileceği, method özelliği ile ise gönderme yöntemi belirlenir.Post ve Get olmak üzere iki farklı gönderme yöntemi vardır. Get metodunda gönderilen veriler adres satırına eklenerek gönderilir ve tarayıcılar da adres satırında görüntülenebilir.Post metodunda ise gönderiler veriler gözükmez.Kısa ve gözükmesi önemli olmayan veriler için get metodu tercih edilebilir.
58Form Elemanları<input> en önemli ve en çeşitli form elemanıdır. type özelliği ile farklı görevlerdeki elemanlar tanımlanabilir.TipAçıklamatextYazı yazılabilecek bir alan eklerpasswordŞifre girişi alanı ekler (değerler *** şeklinde görünür)radioRadyo düğmeleri ekler (çoklu seçenekten seçim)checkboxOnay kutuları eklersubmitFormu kabul edip onaylayan düğme(button) eklerresetFormu temizleyen düğme eklerbuttonBir işlem atanabilecek bir düğme ekler (genellikle Javascript ile)hiddenSayfa içeriğinde görünmeyen gizli veri göndermek için kullanılır
59HTML5 Yeni Input Tipleri HTML5 ile gelen yeni input çeşitlerinden bazıları tabloda verilmiştir.Bu yeni özelliklerin tamamı henüz tüm tarayıcılar tarafından desteklenmemektedir.TipAçıklamacolorRenk seçim alanı eklerdateTarih seçim alanı ekleradresi alanı eklernumberSayı girme alanı eklerurlWeb adresi girme alanı ekler
60Bazı Input Özellikleri AçıklamamaxlengthGirilebilecek maksimum karakteri belirlercheckedÖnceden seçili hale getirir (radio ve checkbox için)minGirilebilecek en küçük değeri belirlermaxGirilebilecek en büyük değeri belirlerplaceholderYazmaya başlayınca kaybolan ipucu eklemeyi sağlarrequiredFormun gönderilmesi için mutlaka gereken veriyi belirlersizeElemanın genişliğini belirtirnameAdını belirtirvalueGönderilecek değeri belirler
61Select ve Datalist Form Elemanları <select> etiketi ile forma açılır menü eklenir. Açılır menüye elemanların eklenmesinde <option> etiketi kullanılır.<datalist> etiketi ile ise hem bilgi girişi yapılabilecek, hem açılır menüye sahip bir alan oluşturulur.
62CSS PaddingBir HTML elemanına ait içerik ile çerçevesi arasındaki boşluğu tanımlar.Elemana ait her bir yön için CSS tanımlaması yapılabilir.Kısa tanımlama da kullanılabilir.
63CSS Margin Bir HTML elemanının çerçevesi dışındaki boşluğu tanımlar. Elemana ait her bir yön için CSS tanımlaması yapılabilir.Kısa tanımlama da kullanılabilir. (top-right-bottom-left)
64CSS PositionBir HTML elemanının sayfa içindeki konumlandırılmasına yönelik bir tanımlamadır.4 farklı değer alabilir.static : varsayılan değer olup top,left,right ve bottom özelliklerinden etkilenmez.relative : normal konuma göre konumlandırma sağlar. top,left,right ve bottom özellikleri kullanılarak konum değiştirilir.fixed: sayfa görünümüne göre sabit bir şekilde tanımlanır. Sayfa aşağı kaydırılsa da sabit kalır. top,left,right ve bottom özellikleri kullanılarak konum belirlenir.absolute: Bir üstte bulunan (elemanı içeren) elemana göre konumlandırma yapılır.* Örnek kullanımlar için Lab Uygulamaları slaytına bakınız.
65CSS 3CSS’in çıkmış en son sürümüdür. Bir çok modülden oluşmakta olup, sahip olduğu özelliklerin büyük kısmı tarayıcılar tarafından desteklenir hale gelmiştir.
66CSS3 – Yuvarlatılmış Köşeler CSS3 ile gelen border-radious özelliği ile herhangi bir elemana yuvarlatılmış köşeler tanımlanabilir.Verilen değer sayısına göre her köşe ayrı olarak tanımlanabilir. Örnekteki sıralama sol-üst, sağ-üst, sağ-alt, sol-altborder-radius: 15px 50px 30px 5px
67CSS3 GradientsGradient özellikleri kullanılarak iki yada daha fazla renkten geçişe dayalı renkler oluşturulabilir.İki farklı gradient modeli tanımlanabilir.Linear: Sol, sağ, aşağı ve yukarıdan başlayan renk değişimleriRadial: Merkezden tanımlanan renk değişimleri
68CSS Dropdowns (Açılır Menüler) Herhangi bir HTML elemanının üzerine fare ile gelindiğinde bir menü, resim ya da yazı açılmasını sağlayabiliriz.Bunun için Dropdown eklemek istediğimiz elemanı bir <div> bloğunun içine alarak bu bloğa hemen yanında(altında,üstünde vs) menü açılması için position:relative özelliği vermeliyiz.Açılıcak menü için ise position:absolute özelliği verilmelidir. Bunun dışında başlangıçta gözükmemesi için display:none özelliği de kullanılmalıdır.Yandaki örneği ve Lab Uygulamaları Sunusundaki örnekleri inceleyebilirsiniz.
69CSS3 Gölgelendirme (Text-Shadow) CSS3 text-shadow özelliği ile metne gölge efekti verilebilir.Özellik kullanılarak sırasıyla yatay ve dikey gölge büyüklüğü, bulanıklık (blur) değeri ve renk değeri belirtilebilir.
70CSS3 Gölgelendirme (Box-Shadow) CSS3 box-shadow özelliği ile bir HTML elemanına gölge efekti verilebilir.Özellik kullanılarak sırasıyla yatay ve dikey gölge büyüklüğü, bulanıklık (blur) değeri ve renk değeri belirtilebilir.