Afili bir CSS dokümanı nasıl olmalı?

kara tarafından 6 Haziran 2009 tarihinde CSS, Web Tasarımı kategorisinde yazıldı.

Bugün Fatih Hayrioğlu’nun not defterinde okuduğum “CSS Kod Yazma Düzeni” adlı yazı üzerine ben de kendi görüşlerimi paylaşayım ve uzun süren sessizliğimi bozayım dedim. Yazıya devam etmeden önce, Fatih’in yazısını okumanızı tavsiye ederim.

devam »

Etiketler: , , , , ,

Google Translate Türkçe

kara tarafından 1 Şubat 2009 tarihinde Web, Web Tasarımı kategorisinde yazıldı.

Bugün Google Translate ile ilgili Twit’imi gönderdikten sonra farkettim ki, microblogging benim normal blog alışkanlıklarımı kötü yönde etkilemiş. Eskiden böyle bir olayla karşılaştığımda hemen araştırma yapar, bir blog yazısı yazardım. Şimdi ya Twitter ya da FriendFeed‘e yazıp geçiyorum. Bu alışkanlığımı kırmaya çalışacağım. Bu yazı da bunun ilk adımı olsun.

Başlıkta da yazdığı gibi Google Translate artık Türkçe çeviri yapabiliyor. Dün konuyla ilgili önce Erman‘dan görüp, daha sonra da Google Operating System‘deki yazıyı okuduktan sonra, yine de Türkçe eklemeleri için çok çalışmaları lazım diye düşünmüştüm. Bugün FriendFeed‘de Ahmet Yükseltürk‘ün bu girdisini görünce hemen yeni bir tarayıcı sekmesi açıp Google Translate’e girdim.

Google Translate Türkçe
Tüm özellikleri ile beraber (metin çevirisi, web sayfası çevirisi, tercüme ile arama, sözlük) hiç bilmediğimiz dillerden Türkçe’ye çeviri (ya da tam tersi) yapabilecek olsak da, denemelerimde gördüm ki Türkçe’nin yapısı itibarı ile köprünün altından daha çok su akması gerekiyor. Yine de bu adım çok sevindirici bir haber. Özellikle Türkiye’de hala kelime çevirisi ile çeviri yaptığını iddia eden onlarca program göz önüne alındığında.

Buna benzer bir projem vardı, arada o da güme gitti ama varsın gitsin.

Etiketler: , , , , , , , ,

CSS ile ortalama

kara tarafından 4 Mayıs 2008 tarihinde Web Tasarımı kategorisinde yazıldı.

Bu yazı orijinali Max Design‘da yayınlanmış olan “CSS Centering – fun for all!” isimli yazının Türkçe çevirisidir.

CSS kullanarak bir içerik bloğunu nasıl ortalarsınız? Bunun için hali hazırda iki metot var ve seçiminizi sayfanızın likit (tarayıcı penceresinin boyutlarına göre boyutları değişen tasarım) ya da sabit genişlikli bir tasarım olmasına göre yapmalısınız.

Likit tasarımlarda ortalama

Likit tasarımlarda içerik bloğunu her iki tarafına da marjin koyarak kolayca ortalayabilirsiniz. Marjinler em, piksel ya da yüzde birimi olarak ayarlanabilir.

div#container
{
margin-left: 10%;
margin-right: 10%;
}

Sabit genişlikli tasarımlarda ortalama

Teorik olarak içerik bloğunun sağına ve soluna otomatik marjinler verdiğinizde bloğun ortalanması lazım.

W3C görsel biçimlendirme modeli‘ne göre: “Eğer ‘margin-left’ ve ‘margin-right’ değerleri ‘auto’ ise, her ikisi de eşit değer kullanır. Bu da elemanı içerik bloğunun kenarlarına göre ortalar.”

Yani bir içerik bloğu şu kurallar uygulanarak ortalanabilir:

div#container
{
margin-left: auto;
margin-right: auto;
width: 50em;
}

Ne varki bazı tarayıcılar otomatik marjinleri gözardı ettiklerinden bu şekilde içerik bloklarını ortalamazlar. Bahsettimiz tarayıcılar arasında şunlar vardır:

  • NN4 (Mac ve Win)
  • Win/IE4
  • Win/IE5
  • Win/IE5.5
  • Win/IE6 (quirks modda)

Basit iki kural ekleyerek yukarıda saymış olduğumuz tarayıcılardan NN4 haricinde diğerlerinde bu problemi giderebiliriz.

1. body’yi ortala

Her ne kadar bu tarayıcılar otomatik marjinleri göz ardı etseler de “text-align: center” şeklinde bir kuralı hepsi tanır. Bu kuralı body elemanına uygularsak içerik bloğu doğru bir şekilde ortalanır. Yani yeni bir kural eklendi:

body
{
text-align: center;
}

div#container
{
margin-left: auto;
margin-right: auto;
width: 50em;
}

2. text-align’ı sıfırla

Yeni kural ile ilgili tek problem, artık sayfadaki tüm elemanlar ortalandı. Bu tümünü ortalama probleminin üstesinden gelmek için yeni bir içerik bloğu ekleyerek “text-align: left” kuralını uygulayalım. Sonuç CSS kodu şu şekilde:

body
{
text-align: center;
}

div#container
{
margin-left: auto;
margin-right: auto;
width: 50em;
text-align: left;
}

Sonuçlar

İlk örnek sayfa bir içerik bloğunun otomatik marjinler kullanılarak, body ortalanmadan nasıl ortalanacağını gösteriyor.

“text-align: center” olmadan ortalama, örnek sayfası

İkinci örnek sayfa, bir içerik bloğunun otomatik marjinlerle nasıl sayfa içinde ortalanacağını ve aynı zamanda body elemanının ortalanmasını ve içerik bloğunda “text-align: left” kullanımını gösteriyor.

“text-align: center” ve “text-align: left” ile ortalama, örnek sayfası

Çeviriler

Bu makale Rodrigue tarafından Fransızca‘ya çevrilmiştir.

Etiketler: ,

Modern Web Tasarımında Zaman Çizelgesi

kara tarafından 6 Mayıs 2007 tarihinde Günlük, Web, Web Tasarımı kategorisinde yazıldı.
Modern Web Tasarımında Zaman Çizelgesi

Espirili bir dille günümüzde bir web sitesinin üretim aşamasında nelere zaman harcandığını gösteren pasta grafik. Şu adreste buldum, Türkçeye çevirip paylaşayım dedim.

Etiketler: , , ,

Her şey SEO için! (aka Güncelleme)

kara tarafından 3 Ağustos 2006 tarihinde Web, Web Tasarımı kategorisinde yazıldı.

Bir süredir karalamalar.net ile ilgilenemiyordum. Bugün biraz vakit ayırmaya karar verdim ve bir kaç geliştirme/güncelleme yaptım. Artık UTF-8 üzerinden yayın yapıyoruz. Tüm yazıları ve yorumları UTF-8 e geçirmek çok zamanımı alacak diye korkuyordum ama ufak bir kopyala yapıştır işlemi ile çok kolay halloldu. Gerekli tüm dosyaları da UTF-8 formatına çevirdikten sonra etiketleme aşamasında ufak bir problem yaşadım ama bu problem sadece UTF-8 ile alakalı değildi.

İkinci bir değişiklik olarak artık yazılara başlıkları ile ulaşma şansımız var. Eskiden adres çubuğunda http://www.karalamalar.net/?p=69 vb şekillerde gözüken adresler artık http://www.karalamalar.net/kamil-koc-web-sitesini-yenilemis/ şeklinde gözükecek. Arama motorlarının daha iyi indekslemesi ve ziyaretçilerin bir yazıya dönüş yapmak istediklerinde tarayıcıların otomatik tamamlama özelliği sayesinde daha rahat erişebilmeleri için güzel bir değişiklik oldu.

Etiketleme sisteminde ufak bir güncelleme, veritabanında bir kaç iyileştirme çalışması da yaptım ve bir sonraki aşama için hazırım. Muhtemelen bir sonraki aşamaya bir altı ay sonra geçeceğim. :)

Etiketler: , , , ,