CSS3 Metin Özellikleri

word-wrap özelliği

CSS3 word-wrap özelliği diğer CSS3 özelliklerinden farklı olarak tüm tarayıcılar(IE dahil) tarafından desteklenmektedir.

Yapısı : word-wrap: <deger>
Aldığı Değerler: normal | break-word
Başlangıç değeri: normal
Uygulanabilen elementler: Tüm Elemanlara
Kalıtsallık: Var

word-wrap özelliği belirtilen alandaki metnin kapsayıcı eleman sınırlarını zorlayan uzunlukta arada boşluk olmadan uzadığında kelimeyi satır başına atmak için kullanılır.

Bir örnek verecek olursak 150px genişliğindeki bir alan içinde bir metnimiz olsun.

<div id="link">
Loremipsumdolorsitametconsecteturadipiscingelit. Nam semper venenatis lobortis. Donec odio nisl, vehicula vitae molestie ac, euismod ac nibh.
</div>

CSS kodu

#link{
  width:150px;
  border:1px solid #999;
}

word-wrap ile bu uzun kelimeyi aşağı atarak sayfadaki patlaklığı düzeltebiliriz.

Önceki yazımda bu işi white-space ile halletmiştim, ama mantıklı olan word-wrap ile çözmek.

Tarayıcı Destekleme Listesi
Firefox 3.5+
Chrome 1+
Safari 3.1+
Opera 10.5+
İnternet Explorer 5.5+
Mobil Tarayıcılar
iOS Safari 3.2+
Opera Mini 5+
Opera Mobile10+
Android Browser 2.1+

text-wrap

text-wrap özelliği word-wrap’e benzer bir özelliktir. word-wrap’in kelimeye yaptığı etkiyi text-wrap metinlere yapar.

Yapısı : text-wrap: <deger>
Aldığı Değerler: normal | none | unrestricted | suppress
Başlangıç değeri: normal
Uygulanabilen elementler: Tüm Elemanlara
Kalıtsallık: Var

text-wrap 4 adet değer alır.

  • normal: Satır sadece belirlenen yerlerden sonra satır başı yapar.
  • none: Satır herhangi bir yerden satırbaşı yapmaz. Metin kapsayıcı üzerinden aşar.
  • unrestricted: Satır herhangi iki karakter arasından satırbaşı yapılabilir.
  • suppress: Satır içinde eğer satırbaşı yapacak bir nokta yoksa elemanı satırbaşı yaptırır

Bu özelliği henüz hiç bir tarayıcı desteklemiyor.

text-stroke

CSS3 ile birlikte text-outline olarak standartlara giren bu özellik daha sonra standartlardan çıkarıldı, ancak webkit tabanlı tarayıcıların -webkit-text-stroke olarak desteklemektedir.

CSS3 ile birlikte metinlerin etrafına dış çizgisi çizmemize olanak sağlıyor. Şu an sadece webkit tabanlı tarayıcıların(Safari, Chrome) desteği mevcut.

Yapısı : text-stroke: <deger>
Aldığı Değerler : thickness | blur | color
Başlangıç değeri: none
Kalıtsallık: Var

Tanım yaparken ilk olarak yazı tipinin rengini yaparız, sonrada dış hat çizgisini tanımlarız.

font:bold 24px Arial, Helvetica, sans-serif;
color: #c00;
-webkit-text-stroke: 1px #000;

<iframe style="width: 100%; height: 300px" src="http://jsfiddle.net/fatihhayri/3dsPG/embedded/" allowfullscreen="allowfullscreen" frameborder="0"></iframe>

text-stroke tanımının ilk değeri dış çizgisinin kalınlığını ikinci tanım rengini belirler.

Dış Çizgili ve Saydam zeminli Yazı Tipleri Oluşturmak

Saydam zeminli yazı tipleri tanımlamak için text-fill-color  özelliği kullanılır.

ont:bold 24px Arial, Helvetica, sans-serif;
color: #c00;
-webkit-text-stroke: 1px #000;
-webkit-text-fill-color: transparent;

Tarayıcı Destekleme Listesi
Firefox desteklemiyor
Chrome 4+ (-webkit- öneki ile)
Safari 3.2+ (-webkit- öneki ile)
Opera desteklemiyor
İnternet Explorer desteklemiyor
Mobil Tarayıcılar
iOS Safari 4.1+ (-webkit- öneki ile)
Opera Mini desteklemiyor
Opera Mobile destelemiyor
Android Browser 2.1+ (-webkit- öneki ile)

text-align (yeni değerler)

text-align özelliği CSS3’den öncede vardı ancak CSS3 ile bu özelliğe iki tane daha yeni değer atandı. Burada bunları inceleyeceğiz. start ve end değerleri. Türkçe ve İngilizce metinler solda-sağa doğru akar., ancak bazı dillerde akış sağdan-sola doğrudur, örneğin Arapça. Böyle sağdan-sola doğru akan dillerde için bu iki değer işe yarıyor.

  • start: Eğer akış soldan sağa ise left etkisi yapacaktır. Akış sağdan-sola ise right etkisi yapacaktır.
  • end: Eğer akış soldan sağa ise right etkisi yapacaktır. Akış sağdan-sola ise left etkisi yapacaktır.

text-align-last

CSS3 ile birlikte gelen bu özellik son satırın veya justify tanımlanmış elemanların satırlarının hizalanmasını sağlar. Bu özellik text-align ile aynı etkiyi yapar.

Yapısı : text-align-last: <deger>
Aldığı Değerler : center | end | justify | left | right | start
Başlangıç değeri: start
Kalıtsallık: Var

justify uygulanmış bir metnin son satırının sağa yaslı olmasını istiyorsak

p {
text-align: justify;
-ms-text-align-last: right;
}

text-overflow

Blok kapsayıcı elemanı içindeki satır içi elemanın içeriğini overflow uygulamak için kullanılır. Blok kapsayıcı elemana overflow:visible tanımı yapılmamış olmalıdır.

Yapısı : text-overflow: <deger>
Aldığı Değerler : clip | ellipsis
Başlangıç değeri: clip
Uygulanabilen elementler: Blok-level Elemanlara
Kalıtsallık: yok


resim kaynağı: https://developer.mozilla.org/en/CSS/text-overflow

Başlangış değeri clip’dir. clip değeri alan satır içi eleman kapsayıcı eleman sınırlarından kırpılacaktır. Diğer aldığı değer ellipsis’dir. ellipsis değeri alan eleman clip gibi davranacaktır ancak farklı olarak sonuna üç nokta(…) koyacaktır.

CSS3 ile birlikte üç nokta yerine kendi istediğimiz özel karkateri cümle satır sonuna ekleyebiliyoruz.

p {
	text-overflow: 'herhangibirsey';
}
Tarayıcı Destekleme Listesi
Firefox 7+
Chrome 1+
Safari 3.1+
Opera 9.0 (-o- ön eki ile)
İnternet Explorer 6+
Mobil Tarayıcılar
iOS Safari 3.2+
Opera Mini 5.0+ (-o- öneki ile)
Opera Mobile 10.0 (-o- öneki ile)
Android Browser 2.1+

text-rendering

text-rendering özelliği okunabilirliği ayarlamamızı sağlana bir özelliktir. Bu özellik sayesinden tarayıcının metinlerimizi nasıl tarayacağını belirleyebiliyoruz. Tarayıcılar metinleri hız, okunabilirlik ve geometrik hassasiyet bakımından farklı şekilde yorumlarlar; text-rendering özelliği bu farklılıkları bizim kontrolümüze sunana bir özelliktir.

Yapısı : text-rendering: <deger>
Aldığı Değerler : auto | optimizeSpeed | optimizeLegibility | geometricPrecision | inherit
Başlangıç değeri: auto
Uygulanabilen elementler: Tüm Elemanlara
Kalıtsallık: Var
  • auto değeri metin tarama işini tarayıcıya bıraktığımız anlamına geliyor.
  • optimizeSpeed  değeri hızlı yüklemeyi okunabilirlik ve geometrik hassasiyetin önünde tutar. Karkater aralığı ve bitişik farf özelliklerinin pasifize eder.
  • optimizeLegibility  değeri okunabilirliği hız ve geometrik hassasiyetin önünde tutar. Karakter aralığı ve bitişik harf özelliklerinin aktiftir.
  • geometricPrecision değeri geometrik hassasiyeti hız ve okunabilirliğin önünde tutar. Geometrik hassasiyet ile yazı tipi oranlı olarak yorumlanmasını sağlar ve buda yazı tiplerinin daha güzel görünmesini sağlar.


resim kaynağı: https://developer.mozilla.org/en/CSS/text-rendering

Tanımlarda dikkatimiz çeken karakter aralığı olarak Y ve o arasındaki mesafe ve ffl görünümündeki farklar kendini gösteriyor.

Tarayıcı Destekleme Listesi
Firefox 3.0+
Chrome 4.0+
Safari 5+
Opera desteklemiyor
İnternet Explorer desteklemiyor

Chrome auto değerini optimizeSpeed olarak yorumluyor, geometricPrecision  değerini tam olarak 13. sürümden itibaren yorumluyor.

Firefox auto değerini yazı boyutu 20px ve üzerinde optimizeLegibility gibi, diğerlerini ise optimizeSpeed gibi yorumluyor. geometricPrecision  ise optimizeLegibility gibi yorumluyor.

Safari auto değerini optimizeSpeed gibi yorumluyor.

hanging-punctuation

CSS3 metinleri yönetmek açısından bizim elimizi kuvvetlendirdiği kesin. hanging-punctuation özelliği bize ayrıntı bir özellik kazandırıyor. hanging-punctuation özelliği metin bloğunun dışına çıkarmamızı sağlıyor. Liste ikonları ve çift tırnakları metin bloğu dışına çıkararak daha güzel sonuçlar almamızı sağlıyor.

Yapısı : hanging-punctuation: <deger>
Aldığı Değerler : none | start | end | end-edge
Başlangıç değeri: none
Kalıtsallık: Var

Yukarıdaki resimde görüldüğü gibi ilk resimde hanging-punctuation uygulanmamış halini görürken ikinci resimde uygulanmış halini görüyoruz. Çift tırnak ve keme işaretleri metin bloğu dışına çıkarak daha blok bir metini ortaya koyuyor.

Bu özelliği henüz herhangi bir tarayıcı desteklememektedir.

Sonuç

CSS3 birçok yönden elimiz güçlendirmektedir. CSS3 metinler üzerinde düzenleme yapmamıza olanak sağlıyor. Henüz tam olarak tamamlanmaya birçok yönü var CSS3 metin özellikleri zamanla daha iyi oturacaktır.

Önceden tarayıcılar ve işletim sistemlerinin inisiyatifinde olan özellikleri CSS3 ile birlikte kod yazarlarının eline vermeye çalışıyor.

Kalın sağlıcakla.

Kaynaklar

4 Yorum (Yorum Ekle)

  • Ömer Faruk Özkan diyor ki:

    Hocam sizi takip etmekte hic sıkılmıyorum valla ne yalan sölim :)

  • Kerem diyor ki:

    Hızır gibi yetişiyorsun üstadım. Yıllardır takipçinim; teşekkürler.

  • Sercan diyor ki:

    iyi günler fatih bey sıkılmadan üşenmeden paylaşım yaptığınız için elinize kolunuza sağlık CSS e yeni giriş yapmış biri olarak hazırlamış olduğunuz pdf i döküp çalışmalara başlıyorum gönül isterdi ki kitabınızı baskılı olarak alıp çalışmak inşallah bigün oda olur.

  • Yusuf Doru diyor ki:

    Teşekkürler hocam, güzel günler göreceğiz :)

Yorum yaz

Format: Yorum içinde kullanılabilecek HTML kodları: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

?