Bütünleşik Biçembentler, 2. Aşama | ||
---|---|---|
Önceki | Yukarı | Sonraki |
Biçembentlerin en önemli özelliklerinden biri bir belgenin farklı ortamlarda nasıl sunulacağının belirtilebilmesidir: ekranda, kağıtta, konuşma bireştiricide, üçnokta aygıtlarında, vs.
Her BB niteliği belli bir ortam türü için tasarlanmıştır; örneğin, cue-before
niteliği işitsel kullanıcı arayüzleri içindir. Durum elverişli olduğunda, farklı ortam türlerinin biçembentleri aynı özniteliği paylaşabilirler, ancak farklı değerler gerekir. Örneğin font-size
niteliği hem ekran hem de yazıcı için kullanışlıdır. Bununla birlikte, iki ortam aynı nitelik için farklı değerler gerektirmesiyle farklıdırlar; bir belge ekranda genellikle kağıttakinden daha büyük bir yazıtipi yüksekliği gerektirir. Ayrıca deneyimler çıkıntısız (sansserif) yazıtiplerinin ekranda daha kolay okunabildiğini, kağıtta ise çıkıntılı (serif) yazıtiplerinin kolay okunabildiğini göstermektedir. Bu sebeplerle bir biçembendin veya biçembendin bir bölümünün belli ber ortam türünü ifade etmesi gereklidir.
Biçembentlerin bir ortama göre belirtilebilmesinin iki yolu vardır:
Biçembendin hedef ortam türü @media
veya @import
@-kuralı ile belirtilir.
@import url("loudvoice.css") aural; /* işitsel ortam için biçembent */
@media
print {
/* ortam yazıcı olduğunda burası kullanılır */
}
Hedef ortam türü belge dilinde belirtilir. Örneğin, HTML 4.0'da [HTML40] <link>
elemanının 'media' özniteliği hedef ortam türünü belirtmek için kullanılar. Örnekte bir harici biçembent belirtilmiştir:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> <html> <head> <title>Bir hedef ortama bağ</title> <LINK rel="stylesheet" type="text/css" media="print, handheld" href="foo.css"> </head> <body> <p>Belge gövdesi... </body> </html>
Bu örnekte biçembent, yazıcı ve avuçiçi aygıtları için belirtilmektedir.
@import
kuralı
Nitelik Değerlerinin Atanması, Bütünleşme ve Kalıtım bölümünde tanımlanmıştır.
@media
kuralı@media
kuralı bir biçembent kuralı kümesi (kaşlı ayraçlarla sınırlanmış olarak) için hedef ortam türlerini (virgül ayraçlı olarak) belirtmek içindir. @media
oluşumu aynı biçembent içinde farklı ortam türleri için biçembent kuralları belirtmeyi mümkün kılar:
@media print { /* yazıcı için */ BODY { font-size: 10pt } } @media screen { /* ekran için */ BODY { font-size: 12pt } } @media screen, print { /* hem yazıcı hem de ekran için */ BODY { line-height: 1.2 } }
Bir BB ortam türü BB biçembentlerinin bir kümesini isimlendirir. Bir ortam türünü ismine göre desteklediğini iddia eden bir kullanıcı arayüzünün o ortam türünün tüm niteliklerini gerçeklemesi gerekir.
BB ortam türleri için seçilmiş isimler belli niteliklerin uygulanabildiği hedef aygıtları yansıtırlar. Aşağıdaki BB ortam türleri listesinde, parantez için alınmış açıklamalar bilgilendirme amaçlıdır (uyulması zorunlu değildir). Hangi aygıtların hangi ortam türleriyle ilişkili olduukları hakkında fikir verirler.
Ortam türü isimleri harf büyüklüğüne duyarsızdır.
Teknolojinin çok hızlı değişmesinden ötürü BB2, @media
ile belirtilebilecek ortam türleri için kesin bir liste belirtmez.
Her niteliğin tanımında, onu gerçekleyecek uyumlu kullanıcı arayüzleri için ortam türleri belirtilmiştir. Nitelikler genellikle birden fazla ortamda uygulanabildiğinden nitelik tanımlarında tek tek ortam türleri değil, ortam grupları listelenir. Her nitelik kendi tanımında belirtilen ekran gruplarındaki her ortam türüne uygulanabilir.
BB2 şu ortam gruplarını tanımlar:
Sürekli veya sayfalı. "İkisi de" niteliğin her iki ortama da uygulanabildiğini gösterir.
karakter eşlemli (karakter aygıtları için) veya bit eşlemli. "İkisi de" niteliğin her iki ortama da uygulanabildiğini gösterir.
etkileşimli (kullanıcıyla etkileşen aygıtlar) veya durağan (kullanıcıyla etkileşmeyenler). "İkisi de" niteliğin her iki ortama da uygulanabildiğini gösterir.
Aşağıdaki tablo ortam grupları ile ortam türleri arasındaki ilişkileri gösterir. (Ç.N. - @media
kuralında değergeç olarak kullanılanları barındıran sol sütun Türkçeye çevrilmemiştir.)
Ortam Türleri | Ortam Grupları | |||
---|---|---|---|---|
sürekli/sayfalı | görsel/işitsel/dokunsal | karakter/bit eşlemli | etkileşimli/durağan | |
aural | Sürekli | İşitsel | Elverişsiz | İkisi de |
braille | Sürekli | Dokunsal | Karakter eşlemli | İkisi de |
emboss | Sayfalı | Dokunsal | Karakter eşlemli | İkisi de |
handheld | İkisi de | Görsel | İkisi de | İkisi de |
Sayfalı | Görsel | Biteşlemli | Durağan | |
projection | Sayfalı | Görsel | Biteşlemli | Durağan |
screen | Sürekli | Görsel | Biteşlemli | İkisi de |
tty | Sürekli | Görsel | Karakter eşlemli | İkisi de |
tv | İkisi de | Görsel, işitsel | Biteşlemli | İkisi de |
Önceki | Yukarı | Sonraki |
Nitelik Değerlerinin Atanması, Bütünleşme ve Kalıtım | Bir Linux Kitaplığı Sayfası | Çerçeve modeli |