Bölüm 3

Blokdüzey Elementler

sayfa 4


<style> ve <title> Elementleri

 

<style> Elementi :

 

SGML platformunun çıkış noktalarından biri, belgenin yapılandırılması ile sunumunun birbirden ayrılması düşüncesidir. Bir SGML türevi olan HTML de aynı paradigmayı paylaşmaktadır. Belgenin içeriğinin yapılandırılması bir tür soyut bir işlemdir. Bunun sağlanması için, başlıklar, paragraflar, listeler, tablolar gibi bilginin yapılandırılmasına yardımcı olacak elementlerden yararlanılır. Bu yapılandırmanın görüntü olarak oluşturulması işlevini ise ayrı bir mekanizma yüklenebilir. HTML doğal gelişmesinin sonunda bu olgunluğa kavuşmuştur.

HTML 4.01 kesin spesifikasyonunda, bu gelişmenin etkileri açıkça görülmektedir. Bu son spesifikasyonda, tüm görüntü düzenleyen öğeler devam ettirilmemiş ve işlevleri, Cascading Style Sheets (Katlı Stil Sayfaları) tekniğine devredilmiştir. "Cascading Style Sheets", türkçeye, "Katlı Stil Sayfaları"  olarak aktarılmıştır. "Cascade" sözcüğünün çeşitli ve farklı anlamları bulunmaktadır. Jean-Paul Belmondo'nun başrolü oynadığı "Les Cascadeurs" (Dublörler) filmi hatırlardadır. Şelaleye de "Cascade" adı verilmiştir. Dublör anlamı, da şelalenin akışında olduğu gibi, takla atanlar anlamından gelmektedir. Bu sözcüğün tam karşılığı Farsça "perendebâz" sözcüğüdür. Cascading Style Sheets teriminin tam Türkçe karşılığı bulunmamaktadır. Türkçeye Katlı Stil Sayfaları olarak aktarılmasının nedeni, stil sayfalarının biribiri kapsayacak şekilde katmanlar şeklinde çalışmasından ve alt katmanların üst katmanlardan bazı özellikleri miras alabilmesidir. Bu yöntemden kısaca "Stil Sayfaları" olarak bahsedilmektedir.

Cascading Style Sheets (CSS) yöntemi, W3C tarafından, CSS Level 1 ( Katlı Stil Sayfaları Düzey 1) ve CSS Level 2 ( Katlı Stil Sayfaları Düzey 2) ve en son CSS Level 2.1 ( Katlı Stil Sayfaları Düzey 2.1) olarak adlandırılanı spesifikasyonlar ile düzenlenmiştir. Sadece Netscape tarafından desteklenen JavaScript Stili dili (JavaSript ile karıştırılmamalıdır), Internet Explorer ve W3C tarafından desteklenmediği için kullanıma girememiştir. Bugün için, stil dili olarak, HTML sayfaları ile birlikte sadece CSS stil dili kullanımdadır.

CSS programlama dili, bir tür script dili olarak nitelendirilebilir. Bu programlama dili, geniş kapsamlı ve ayrıntılı olduğundan ayrı bir kısımda incelenecektir. Bu kısımda sadece <style> elementinin içerik modeli ve HTML sayfalarına stil ögelerinin yerleştirilme yöntemleri üzerinde durulacaktır.

<style> Elementinin İçerik Modeli:

<style> Elementinin DTD deki bildirimi :

 

Bu bildirimden, <style> elementinin başlangıç ve bitiş imlerinin zorunlu olduğu, içeriğinin stil programı adımlarından oluşması gerektiği anlaşılmaktadır. Bu bilgilerle <style> elementinin sözdizimi:

<style        (Başlangıç imi : Gerekli )

Uluslararasılaştırma Nitelikleri (lang ve dir)(isteğe bağlı)

media="all" veya "screen" veya "print" veya "braille" veya "aural" veya "projection" (birden fazla media tanımı için virgülle ayrılmış bir liste kullanılabilir) [YZ] (media niteliği bazı kaynaklarda [YD] olarak gösterilmektedir)

title ="Bilgi metni" (Stil ismi olarak da düşünülebilir) [YZ]

type = "içeriktipi " ("text/css") [YZ]>

İçeriği : Stil satırları...

</style>       (Bitiş imi : Gerekli)

şeklindedir.

<style> Elementini içerebilecek Elementler : Sadece <head> elementi.

<style> Elementinin Nitelikleri

title = "metin" [YZ]

Birçok element gibi, <style> elementi de bir açıklayıcı bir başlığa sahip olabilir. Bu başlık metni Internet Explorer ile açıklama görüntüsü verebilir. Bu başlık stilin adı olarak nitelendirilebilir. Farklı stil dosyaları aynı title değerini paylaşırsa, belge çözümleyicileri bunları aynı stil olarak algılar.

Uluslararasılaştırma Nitelikleri (lang ve dir)

Bu nitelikler sadece, <style> elementinin title niteliğinin değeri olan metin parçasının açıklayıcı görüntülerinin (tırnakiçi görüntülerinin) belge çözümleyicilerce oluşturulması sırasında belge çözümleyicilerin doğru karakter kodlamasını uygulamaları için gerekirse kullanılır.

type = "içeriktipi " ("text/css") [YZ]

Kullanılan style diline ait MIME tipi bilgisi. Geçerli MIME tipi olarak sadece "text/css" seçeneği bulunmaktadır.

media = mediadesc [YZ] (media niteliği bazı kaynaklarda [YD] olarak gösterilmektedir)

Bu nitelik, stil programının hangi ortamda görüntü sağlayacağı ile ilgilidir. media Niteliğinin alabileceği media-desc değerleri Ek-3 Sayfa 2 de görülebilir. HTML sayfalarının artık projeksiyon cihazları, cep telefonları gibi, çok değişik ortamlarda görüntülenmesi hedeflenmektedir. Kullanılmayacak ortam bilgilerinin indirilmesi, belgenin yüklenme hızını düşüreceği konusunda uyarılar bulunmaktadır. Bu niteliğin varsayılan değeri, "screen" dir. Internet Explorer sadece "all" , "screen" veya "print" değerlerini tanımaktadır. Bu durumda, belgelerde belge çözümleyicilerin genel uyumunun gözetilmesi nedeni ile, şimdilik sadece bu üç değerin kullanılması ile sınırlanılır. Birden fazla değerler, screen, print şeklinde virgülle ayrılarak belirtilebilir. "all" Değeri kullanılırsa, diğerlerinin belirtilmesi gereği yoktur. Bu nitelik şu anda, belge çözümleyicilerin tümünde tam olarak desteklenmediğinden kullanımı için henüz erken olduğu düşünülmektedir.

Bir Sayfanın Varsayılan Stil Türü

Bir sayfanın script dili HTTP başlığı halinde istemci bilgisayarın ulaşabilir. Bu başlık:

şeklindedir. Eğer, sayfa bir-meta bilgi halinde sayfada geçerli stil dili bilgisini içeriyorsa, en yüksek öncelik bu bilgiye verilir. Meta-bilgi satırı aşağıda görülmektedir:

Eğer bu ikiside bulunmuyorsa, varsayılan stil programı dili, text/css olacaktır.

Belgelerde stil programı kullanılacaksa- aslında stil programı olmayan bir HTML sayfası düşünülemez-, varsayılan değere güvenilmeyip, hem meta-bilgi halinde hem de <style> elementinin bildiriminde, type="text/css" şeklinde, stil programının MIME tipi belirtilmelidir

Bir HTML Sayfasına Stil Ögelerinin Uygulanması

Bir HTML sayfasına stil ögeleri, dört türlü uygulanabilir:

Element Düzeyinde Stil Tanımları:

Element düzeyinde stil tanımları, style niteliği alabilen her elementin bildirimi sırasında yapılabilir. Örnek:

Bu program b3s4uygulama1.htm olarak kaydedilmiştir. Bu tür bir bildirimde, yazar varsayılan MIME türüne güvenmek zorundadır. Üstelik bu tip dağınık ve her element için özel bildirimler, belgenin görüntüsü üzerinde yazarın kontrolünün kesinlikle kaybolmasına neden olur. Bu tür stil bildirimleri, hem SGML genel prensiplerine, hem de bu prensipleri özümsemiş olan HTML 4.01 kesin spesifikasyonu ana düşüncesine aykırıdır. Bu bakımdan, element düzeyinde stil bildiriminden kaçınılmasında yarar bulunmaktadır.

Sayfa Düzeyinde Stil Tanımları

Sayfa düzeyinde stil tanımı, sayfanın <head> kısmında <style> elementi bildirimi ile yapılır. Örnek:

Bu tip bir stil bildirimi, tam anlamı ile genel bir kapsam kazanmış ve her türlü stil programı ögesi bu düzeyde kullanılabilir duruma gelmiştir. Yukarıdaki örnekteki stil bildirimi, sayfa içindeki, tüm "navy" sınıfı önformatlı elementlere uygulanacaktır. Stil programlarını tanımayan belge çözümleyicilerin, program kodlarını metin olarak algılayıp görüntülemesinin engellenmesi için, stil programı adımları HTML yorum satırları olarak yerleştirilmiştir. Aslında, günümüzde artık CSS terimlerini tanımayan bir belge çözümleyicisi kalmadığından, bu önlemin gereksiz olacağı düşünülebilir. Bu stil tanımını kullanan bir önformatlı metin elementinin içeriği,

şeklinde bir bildirim ile,ortlanmış olarak mavi karakterlerle yazılacaktır. Bu örnek, b3s4uygulama2.htm olarak kaydedilmiştir.

Sayfanın <head> kısmında yapılan <style> bildirimi, yukarıdaki gibi bir stil tanımlarsa, tüm sayfada aynı sınıftaki tüm elementler bu stilin belirttiği şekilde görüntülenecektir. Yani, bu tür bir stil tanımının kapsamı tüm sayfayı kapsamaktadır. Yine de sayfaya özgü bir stil programı tanımı, iyi bir programlama stili sayılmaz. Herşeyden önce, <head> kısmında yazılmış bir stil programı belgenin HTML kodlarının yanında hem heterogen bir görüntü verecek, hem de <head> kısmını gereksiz kalabalıklaştıracaktır. Ayrıca birden çok sayfa içeren bir Web için, sayfaların birinde tanımlanacak bir stil programı diğer sayfada geçersiz olacaktır. Her sayfa için ortak uygulanabilecek bir stil programı için, ya her sayfanın <head> kısmına aynı stil bildirimi kopyalanacak, ya da bir dış stil sayfası oluşturup her sayfaya bağlanacak veya ithal edilecektir.

Bir Dış Stil Sayfasının Sayfaya Bağlanması (linking)

Bir dış stil sayfası oluşturmak çok kolaydır. Bir ASCII metin editörü ile önce aşağıdaki gibi bir stil programı yazılır:

Bu program bluestyle.css adı ile kaydedilir (örneklerde kullanılan bluestyle. css dosyası, sayfa ile aynı dizine kaydedilmiştir) . Sonra aşağıda görüldüğü gibi, istenilen sayfaya, <link> elementi yardımı ile bağlanır:

Bu program b3s4uygulama3.htm olarak kaydedilmiştir. Bu sayfanın belge çözümleyicilerde yayınlanması ile elde edilen görüntü, CSS programı ile belirtilmiş olduğu gibi, ortya hizalı ve koyu mavi karakterlerle görüntülenen bir metin satırıdır. Sonuçlardan da görüldüğü gibi, bir stil programının etkisi, ister metin düzeyinde, ister sayfa düzeyinde, ister bir dış sayfadan gelsin aynı olmaktadır. Dış stil sayfalarının avantajlarından biri de sayfanın kodlarında değişiklik yapmadan, sadece stil dosyasının içeriğinin değiştirilmesi ile sayfanın görüntüsününün değiştirilebilmesidir. Genel olarak, birden fazla sayfa içeren Web topluluklarında, tüm sayfaların görüntülerinde tekdüzeliğin sağlanması için, diş stil sayfaları kullanımı en iyi bir yöntem olarak sayılabilir.

Bir Dış Stil Sayfasının Sayfaya ithal edilmesi (importing)

Bu teknik daha az tanınan bir yöntemdir. Bir stil programı aşağıda görüldüğü gibi, url anahtar sözcüğünün önünde parantez içinde ve tırnak arasına alınmış bir URI bilgisi ve noktalı virgülle sonlanmış bir ifade kullanılması,


veya doğrudan tırnak içine alınıp noktalı virgülle biten mutlak URI bilgisi


veya doğrudan tırnak içine alınıp noktalı virgülle biten göreli URI bilgisi

belirtilerek yapılır. İlk yöntem b3s4uygulama4.htm örneğinde, ikincisi b3s4uygulama5.htm örneğinde, üçüncüsü b3s4uygulama6.htm örneğinde uygulanmıştır. İstendiğinde medya-spesifik stil sayfaları da ithal edilebilir. Örnek:

Şu anda medya-spesifik stil sayfalarını sadece Netscape 7.01 ve Opera 7.23 desteklemektedir. IE 6.02 bu yöntemi desteklememektedir. Bu durumda, desteklenme birliği sağlanamadığından, medya-spesifik stil sayfaları kullanımını ne yazık ki ileriye bırakmak zorundayız. Aslında, ekranda gözalıcı bir görüntü, yazıcı için daha sade bir görüntü oluşturacak stil sayfalarının kullanımı gerçekten çok kullanışlı olmaktadır. Bu denemeler, Netscape sınıfı destekleyen belge çözümleyiciler ile yapılarak ilginç sonuçlar görülebilir.

Bir dış stil sayfasının, bir HTML sayfasına bağlanması veya ithal olması arasında bir fark yok gibi görünüyorsa da, kuramsal olarak bu sadece tek bir stil sayfasının ilişkilendirimesi için doğrudur. Birden fazla stil sayfası bir HTML sayfasına ilişkilendirilecekse, kuramsal olarak ilişkilendirme yönteminin alınacak sonucu etkilemesi gerekir. HTML 4.01 kesin spesifikasyonu gereğince, bir HTML sayfasına birden fazla stil sayfası bağlanmışsa, belge çözümleyicisinin kullanıcıya uygulanacak stil sayfasını sorması gerekirken, günümüzde belge çözümleyicilerin hiçbiri bu kurala henüz uymamaktadır. Bu durumda, bir HTML sayfasına birden fazla stil sayfasının bağlanması veya ithal edilmesi arasında fark görülmemekte ve sadece stil sayfalarının katlı (cascading) etkisi oluşmaktadır.

Gelecekte Uygulanabilecek Yöntemler

Bazı stil sayfaları, alternatif stil sayfaları olarak adlandırılır. Bu alternatif stil sayfaları, rel="alternate stylesheet" olarak belirtilir ve stil sayfasının adı, title niteliği ile bildirilir. Alternatif stil sayfası bildirimi için bir örnek :

HTML 4.01 kesin spesifikasyonu, bir belgede istenilen sayıda alternatif stil syafası tanımlanabileceğini ve belge çözümleyicilerin bunlar arasından birini seçme olanağı tanıyacağını belirtmesine rağmen, henüz hiç bir belge çözümleyicisi bu olanağı tanımamaktadır.

Bir belgenin tercih edilen stili, rel="stylesheet" olarak belirtildikten sonra, title niteliğine bir değer verilerek tanımlanır. Örnek:

Burada adı geçen, green.css stil sayfası,

olarak tanımlanır ve green.css dosyasında saklanır. Şimdi yeni bir HTML sayfası oluşturup, green.css ve bluestyle.css dosyalarını, mystyle adı ile birleştirip, tercih edilen bir stil oluşturalım:

Bu örnek b3s4uygulama8.htm olarak kaydedilmiştir. Bu dosyanın çalıştırılarak stillerin etkisi görülebilecektir.

Varsayılan stil adı, bir meta-bilgi olarak da bildirilebilir:

Kalıcı bir stil bilgisinin oluşturulması için, rel="stylesheet" olarak tanımlanır ve title niteliği kullanılmaz. Bu tanıma göre, halen kullanılmakta olan stil sayfaları, kalıcı veya tercih edilen türden stil sayfalarıdır. Medya-spesifiklik özelliği, henüz belge çözümleyicilerinin tümü tarafından desteklenmemektedir.

Bir HTML Sayfasına Birden Fazla Stil Dosyası İlişkilendirildiğinde Güncel Olarak Elde Edilebilecek Etki

Günümüzde, halen uygulanmakta olan belge çözümleyicilerin yetenekleri, bağlama ve ithal etme farkını gözetmemektedir. Stil bildirimlerinin etkisi kumulatif değildir. Yine de bir elementi birden fazla stil ifadesi hedefleyebilir. Bir elemente uygulanacak stilin önceliği aşağıdaki irdeleme ile belirlenir:

Örnek :

Bu programda, önce <link> elementinden yararlanılarak sayfaya bağlanmış bluestyle.css adlı bir stil programı dosyası bulunuyor. bluestyle.css Programının içeriği bir sınıf selektörü niteliğinde ve sayfanın tüm "navy" sınıfı <pre> elementlerinin koyu mavi karakterlerle görüntüleneceğini belirtiyor. Bundan sonra bir <style> elementi bildirimi yapılmıştır. <style> Elementi ile yapılacak stil bildirimlerinin ilki eğer varsa daima ithal edilen stil dosyalarını belitmelidir. Burada da ilk terim zorunlu olarak bir ithal dosyasına ait ve green.css katlı stil programı dosyası bu terim ile sayfaya ithal edilerek içerdiği stil özellikleri geçerli olmaktadır. green.css programının içeriği, tüm green sınıfı paragraf elementlerinin yeşil karakterlerle görüntüleneceğini belirtmektedir. Bundan sonra "unique" adlı bir id selektörü bildiriliyor. Bu selektör, id isimli elementin kiremit rengi görüntüleneceğini belirtmektedir. Bundan sonra içeriğe yönelik (contextual) bir selektör gelmekte ve <pre> elementinin içereceği <h1> elementinin içeriğinin deniz mavisi renkte karakterler ile görüntüleneceği belirtilmektedir. En son selektör, sayfadaki tüm <h1> elementlerinin karakterlerinin kırmızı renkte görüntüleneceğini belirmektedir.

Bu programda bazı elementleri, birden çok stil tanımı hedeflemektedir. Doğal olarak elementin stili, önceliği en yüksek olanın öngördüğü şekilde oluşacaktır. İlk görüntülenecek element "green" sınıfı bir paragraftır. Paragrafları hedefleyen sadece "green" adlı sınıf selektörü olduğundan, elementin içeriğinin görüntülenmesi, "green" sınıf selektörünün öngördüğü gibi olacaktır. Hakikaten elementin içeriği yeşil karakterlerle görüntülenmektedir. Bundan sonra görüntülenecek olan "navy" sınıfı ve id niteliği "unique" olan bir <pre> (önformatlanmış metin) elementidir. Bu element bir <h1> elementini içermektedir. İlk olarak en içteki <h1> elementi için geçerli stili arayalım. <style> Elementindeki tanımlardan <h1> elementini ilgilendiren iki stil selektörü bulunmaktadır. Birisi genel olarak tüm <h1> elementlerinin içeriğinin kırmızı renkli karakterlerle görüntülenmesini öngörmektedir. Diğeri ise özel olarak, eğer bir <h1> elementi <pre> elementinin içeriği ise, içeriğinin deniz mavisi karakterlerle görüntülenmesini öngörmektedir. Özel tanımın önceliği daha yüksek olduğu için <h1> elementinin içeriği, deniz mavisi karakterlerle görüntülenmektedir. Dıştaki <pre> Elementinin stil özelliğini ise "navy" sınıf selektörü ile "unique" id selektörü etkilemektedir. id Selektörünün önceliği daha yüksek olduğu için, bu <pre> elementinin içeriği, kiremit rengi karakterlerle görüntülenmektedir. Bundan bir sonra görüntülenecek olan "navy" sınıfı <pre> elementinin style niteliğine atanan font-familiy özelliği, sadece görünülenecek karakter türünü etkilemekte ve karakter rengini etkilememektedir. Bu nedenle görüntülenen karakterler, bluestyle.css stil dosyasının belirttiği gibi koyu mavi ve metin düzeyi bildiriminin belirttiği gibi sans-serif bir karakter kullanılarak gerçekleşiyor. Bundan sonra "green" sınıfı ve style niteliğine bir değer atanmış bir paragrafın görüntülenmesi yapılması gerekiyor. Elemente en yakın olan metin düzeyi bildiriminin önceliği daha yüksek olduğu için, metin sarı karakterlerle görüntülenmektedir. Bunu takibeden görüntü bir "navy" sınıfı <pre> elementidir. Burada sayfaya bağlanmış bluestyle.css dosyasındaki tanımı etkileyecek bir durum olmadığından, stil dosyasındaki tanım uygulanarak, içerik koyu mavi karakterlerle görüntülenmektedir. En son olarak, "green" sınıfı paragrafın görüntülenmesi de, başka etkileyecek bir stil olmadığından, green.css dosyasındaki stil tanımına göre yeşil karakterlerle görüntülenmektedir. Bu örnek, b3s4uygulama9.htm olarak kaydedilmiştir.

Stil Bilgilerinin Kalıtımla Kazanımı

Stil bilgileri kalıtımla da kazananılabilir. Tüm stil özellikleri kalıtımla yayılmaz, fakat kalıtımla yayılabilen özellikler, açıkça belirtilmeseler de varsayılan değerleri ile yazılan her element üzerinde etkisini hissettirir. Bir element için uygulanabilir öncelikli bir stil özelliği yoksa, ilk aşamada, elementi içeren elementin kalıtımla geçebilecek özellikleri varsa, o özellikler uygulanır. Elementi içeren element halkalarında en tepe <html> elementine kadar arama sürerek uygulanabilecek bir stil özelliği aranır. Örnek olarak <html> elementinde dil niteliği belirtilmişse bu bütün belge elementlerine kalıtım ile yayılır. Aşağıda görülen, b3s4uygulama10.htm olarak kaydedilmiş ortak programı inceleyelim:

 

Bu örnek sayfada en açık kalıtım kuralları kullanılmıştır. <body> Elementinin style niteliği ile, tüm paragrafın ortadan hizalı ve mavi renkte karakterlerle görüntüleneceği belirtilmiştir. İlk paragraf elementi bu stili kalıtımla kazanmış ve görüntüsü bu şekilde oluşturulmuştur. İkinci element, kendi styleniteliğini bildirmiş ve bu bildirim kalıtım ile geçebilecek olan yanında öncelik aldığından, elementin içeriğinin görüntüsü kendi stil niteliğine uygun olarak oluşturulmuştur. Bu elementin bitiminden sonra bildirilen <blockquote> ve <p> elementlerinde yeniden kalıtım ile kazanılan stil değerlerine göre görüntüleme geri gelmiştir. Her element için ayrı ayrı stil bildirimi yerine, sadece tek bir bildirim kullanılarak istenilen görüntü oluşturulmuştur. Böylelikle, kalıtım özelliğinin kod yazımında hissedilir bir azalma sağladığı görülmektedir.

Bir elementin görüntü oluşturulması ile ilgili nitelikleri ile kalıtım ve öncelikli stillerin karşılaşmalarında, kimin üstün çıkacağı son derece karmaşık ve giderek belirsiz hale geldiğinden, HTML 4.01 kesin spesifikasyonu ile görüntü oluşturulan niteliklerin tümü kaldırılmış ve görüntülerin sadece CSS özellikleri ile oluşturulması öngörülmüştür. Bu kurala uymakta büyük yarar bulunmaktadır.

Bu bölümde sadece CSS bilgilerinin sayfaya nasıl aktarılacağını ve CSS özelliklerinin belge görüntüsünü etkileme mekanizmaları üzerinde bir giriş yapabildik. Daha geniş ve detaylı bir CSSDüzey 2.1 çalışmasını ayrı bir bölümde ele alacağız. Web yazarlarının bu konuda uzman olmaları gereklidir. Bu çalışmalar başlayana kadar bazı noktaları daha güçlü olarak vurgulayalım:

Bu kısımda, sadece <script> elementini ve bazı basit CSS ifadeleri tanıtılmaya çalışılmıştır. Katlı Sti Sayfalarının etkin bir şekilde uygulanabilmesi CSS script dilinin iyi bir şekilde özümlenmesi gereklidir. Bunun için CSS Düzey 2.1 programı ayrı bir bölümünde ayrıntılı olarak incelenecektir. CSS Düzey 2 nin inceleneceği bölüme kadar bilgiler ile yetinmek zorundayız.

 

<title> Elementi

 

<title> Elementi, her HTML sayfasında, <head> kısmında belirtilmesi gerekli olan bir elementtir. Her Web sayfasının başlığı, belge çözümleyicilerin üst çerçevesinde yazılır. Arama motorları da belgeleri değerlendirirken belge başlığından da yararlanır. <title> Elementinin DTD deki tanımı:

 

 

şeklindedir. Bu bilgilerden, <title> elementinin Başlangıç ve Bitiş imlerinin zorunlu olduğu, içeriğinin sadece #PCDATA şablonuna uyan bir metin olabileceği, bu elementin HTML sayfası ile değil, belge çözümleyicisinin, belgeyi tanıması ve başlık satırında belirtmesi ile ilgili olduğu anlaşılır. #PCDATA şablonunun kullanılabilir saydığı karakterlerin içinde, karakter varlıkları ve karakter karşılıkları bulunabilir fakat, element işaretlemesi için kullanılan <, & (ampersand) veya ]]> karakter dizisi bulunamaz. Çünkü belge çözümleyiciler bu karakterleri, işaretleme (markup) olarak algılar. Görüldüğü gibi, DTD deki <title> elementinin içerik modelinin tanımında, içerik modelinin #PCDATA şablonuna uyan bir metin parçasından % head.misc parametre varlığının eksiltilmesi şeklinde bir tanım bulunmaktadır. Bu tanımın bu şekilde olması ilk bakışta anlamsız gelebilecektir. Bu tanımın karmaşıklığı, W3C nin <head> elementini tanımlarken yapmış olduğu çapraşık tanımın yan etkisi olarak nitelendirilmektedir. Bu tanım yerine<head> kısmında önerdiğimiz tanım kullanılsa, bu karmaşa oluşmayacaktı.

<title> Elementinin söz dizimi:

<title             (Başlangıç imi : Gerekli)

Uluslararasılaştırma Nitelikleri (lang ve dir)( sadece içeriği olan metin için) >

İçeriği :(Salt metin)

İçerdiği elementler: Yok.

</title>             (Bitiş imi : Gerekli)

şeklindedir.

<title> Elementinin Nitelikleri

Uluslararasılaştırma Nitelikleri (lang ve dir) :

Bu nitelikler sadece <title> elementinin içeriği olan metin satırının belge çözümleyicinin başlığında görüntülenmesi için kullanılır. Belge çözümleyiciler şimdilik lang niteliğini değerlendiremektedirler. Batı dilleri de varsayıldığı gibi soldan sağa doğru yazıldığından, bu niteliğin bugün için, sadece sağdan sola yazılan alfabeler için kullanılması söz konusudur.

<title> Elementinin Uygulanması

<title> Elementi, belgenin kendisi ile ilgilidir ve belgenin dizinde saklı olduğu dosya ismi ile bir ilişkisi yoktur.

             Belge çözümleyicileri <title> elementinin içeriğine çok duyarlıdır ve kurallara uygun olmayan bir <title> bildirimi, sayfanın belge çözümleyicilerinde görüntülenmemesine neden olabilir. <title> Elementinin içeriği olarak Türkçe Alfabeye özgü karakterler kullanılmamalıdır. Belge çözümleyicileri bu sayfa başlıklarını, belge karakter kodlamasına göre, hatta işletim sistemi kod sayfasına göre değerlendirerek değil sadece İngiliz Alfabesi karakterlerini görüntülemek eğilimindedir. Belge çözümleyicileri, <title> elementinin içeriğinde, metinden başka herşeyi, örnek olarak resim veya bağları görmezden gelirler.

Örnek :

şeklinde bir başlığın görüntülenmesine bir sorun çıkmayacaktır çünkü Latin-1 karakter setinden farklı bir karakter kullanılmamıştır.

<title> Elementinin de tanıtımı ile head bölümü elementlerinin incelemesini tamamlamış oluyoruz. HTML elementlerinin incelemesine <body> kısmında kullanılan elementlerle devam edeceğiz.

 

 

Wednesday, October 5, 2005 17:48

 

validate in W3C !Valid HTML 4.01!