Geçen gün Kadir Günay bana sormuştu bu konuyu benim aklımda da css ile bir çözümü olduğu ancak ie6 ile sorunu olduğu kalmıştı. Biraz araştırdım ie6 ile sorunu yok, var ama ufak tefek. Araştırmışken birde makale yazayım herkes yararlansın dedim.
İlk harfi büyük paragraflar oluşturma işi aslında dergilerde sık uygulanan bir yöntemdir. Genelde dergilerin başlangıç paragrafının ilk harfi 2 veya daha fazla satır yüksekliğinde oluşturarak farklı ve güzel bir görünüm kazandırırlar. Bu durumu biz css ile yapabiliyoruz.
Biz bu görüntüyü first-letter seçicisi ile elde edebiliyoruz. Hatta bu seçicinin adı drop caps-ilk harfi büyük harf seçicisi diyede geçiyor. Bizim için en büyük avantajı ie6 dahil tüm tarayıcıların bu özelliği desteklemesi.
:first-letter seçicisini tanımlanabilen özellikler listesi;
- font özellikleri
- color özellikleri
- background özellikleri
- text-decoration
- vertical-align (float değeri none ise)
- text-transform
- line-height
- margin özellikleri
- padding özellikleri
- border özellikleri
- float
- text-shadow
- clear
İlk Denememiz
HTML kodlarımız
CSS kodlarımız
Örneği görmek için tıklayınız.
Firefox’da yukarıdaki görüntüyü elde ederken
İnternet Explorer’da yukarıdaki gibi bir görüntü elde ederiz. Dikkat ederseniz bir explorerda L harfi yukarıya daha yakın.
Sorunu gidermek için line-height değerini 1em olarak atıyoruz. Farklı line-height değerleri ile padding uygulamalarında ie 6 ve 7’de sorun çıkıyor, line-height değerini 1 em’de tutmak mantık en azından ie için 1em yapmak gerekiyor.
Fark stillerde uygulamalar yapabiliriz.
İlk harfi font-face ile özel bir yazı tipi ile oluşturarak güzel bir görüntü elde edebiliriz. Yazı tipini(PaladinFLF) http://www.fontsquirrel.com/fontface sitesinden aldım.
Örneği görmek için tıklayınız.
İşe Biraz daha renk katalım
İlk harfin etrafına kenar çizgisi atayıp ardalan rengini değiştirelim.
HTML kodları
Örneği görmek için tıklayınız.
Ardalan Resmi ile
Harfin ardalanına bir resim koyup üzerine harfi koymayı deniyorum.
Örneği görmek için tıklayınız.
Firefox ile yukarıdaki gibi güzel bir sonuç elde ediyoruz. Ancak İnternet Explorer’da sorun yaşıyoruz.
Bu duruma çözüm üretmek için bir kaç yol var. İlki resmi direk içeriğe ekleyip float:left ile sola yaslayarak çözmek
HTML kodu
Örneği görmek için tıklayınız.
Diğer bir yöntem bu harfi span içine alıp background olarak tanımlamaktır.
CSS3 ile ekstra kod kullanmadan
Sayfamızın ilk paragrafının ilk harfine uygulama yapıyoruz. first-child seçicisi bu imkanı bize sağlar. ancak bu özelliği ie < 9 desteklemiyor.
Kaynaklar
- http://www.sitepoint.com/blogs/2010/04/15/a-simple-css-drop-cap/
- safalra.com/web-design/typography/css-drop-caps/
- http://www.learningjquery.com/2006/12/multiple-fancy-drop-caps (jquery ile)
- http://www.htmldog.com/articles/dropcaps/
- http://css-tricks.com/snippets/css/drop-caps/
- http://azizname.blogspot.com/2006/10/magazine-style-drop-caps.html
- http://dailydropcap.com/ (günlük örnekler)
- http://jackosborne.co.uk/articles/pseudo-drop-caps
- http://www.akxl.net/labs/articles/text-wrapped-drop-caps-in-css-using-the-first-letter-selector
- http://www.users.globalnet.co.uk/~arcus/html/dropcaps.html