29 Kasım 2012 Perşembe

CSS’e Başlamak


Cascading Style Sheets (CSS) HTML ‘deki bazı problemleri halletmek için ama asıl neden olarak da; web sayfası içeriği ve web sayfası görünümünü birbirinden ayırmak için oluşturulan bir standarttır.

CSS 1996′da W3C tarafından duyuruldu. Son olarak CSS2.1 versiyonu işler durumdadır. CSS3.0′da çalışmaları devam etmektedir. CSS3.0 için ayrıntılı bilgiye http://www.w3c.org/Style/CSS/current-work adresinden ulaşabilirsiniz.

CSS kullanımının bir çok bakından avantajları bulunmaktadır. Belli başlı avantajlarını sıralarsak:

Görünüm AvantajlarıCSS HTML’e göre bir çok stil özelliğine sahiptir. CSS’in sayfa içeriği öğelerinin sayfa görünümü öğelerinden ayrılması için geliştirildiğini düşünürsek avantajı baştan anlaşılmış olur.

<h1>CSS'e Giriş</h1>HTML’de bu elementi(h1) kalın,altı çizili, ardalanı kırmızı olarak atama gibi çeşitli stiller verbiliriz ancak bunlar içinde ayrı HTML elementleri kullanmak zorundayız (örn:strong, gibi), ancak CSS de bunu tek bir elementle yapabiliriz ve ayrıca daha fazla stil özellikleride atayabiliriz.(örn: kenarlık, rollover vs stillerini ekleyebiliriz.)

h1 {
color: white;
font: italic 11px Arial, serif;
text-decoration: underline;
background: yellow url(titlebg.gif) repeat-x;
border: 1px solid red;
margin-bottom: 0;
padding: 5px;
}

Kullanım KolaylığıHTML’de her elmente artı özellikler eklemek için başka bir element ve özellik eklmemiz gerekiyor ve bu işlemi geniş çaplı bir sitede yaptımızı düşünütseniz çok büyük zaman kaybı ve uğraş gerektiğini göreceksiniz.

<h1><font color="blue">Başlık</font></h1>Bunun gibi onlarca veya yüzlerce başlığınız olduğunu düşünün, gerçekten çok zor. CSS’de aynı işlem için

h1 {color: blue;}hatta daha sonra bu elementin özelliklerinde değişiklik yapmamızda kolay olacaktır. Hatta bu işlemi sadece bu etiket için değil diğer etiketlerede uygulayabiliriz.

h1, h2 {color: blue;}Ayrıca tek bir CSS dosyası ile sitenin tamamının yönetmekte web kodlamacıları için çok büyük kolaylıktır. Sadece bir dosyada değişlik yaparak tüm sitemizi yönetebiliriz isterse yüzlerce sayfa olsun.

Tasarım TutarlılığıTek CSS dosyası ile tüm sitenizi yönetebilirsiniz bu ayrıca sitenize tutarlılık kazandıracaktır. Tüm sayfalarınıza aynı stil elementlerini ve özelliklerini atayarak sayfa tutarlılığını sağlayabilirsiniz. Web sayfanızdaki ilk sayfadan son sayfaya kadar tutarlılığınızı koruyarak ziyaretçinize düzenli bir içerik sunmuş olacak ve sitenizin kendine has özelliklerini ziyaretçiye benimsetmiş olacaksınız. Sayfalar hızlı yüklenecek ve doğru olarak yüklenecektir, çünkü aynı elementleri diğer sayfalarda tekrar yüklemeyecek ve bu ziyaretçiye zaman kazandıracaktır. CSS+XHTML ile HTML göre %50′ye varan performans ve hız artışları olacaktır.

Gelecek VaadediyorHTML giderek işlevselliğini kaybedeceği ve XML ve dolayısı ile XHTML’in işlevselliğini artıracağı düşünülürse, CSS gibi tümleşik bir stadardın önemi daha çok anlaşılıyor.

XHTML ile daha temiz kodlar üretilecek, farklı platformlara(pda,cep telefonu vs.) uyum sayesinde bilgi dolaşımı kolaylaşacak, sayfalarımız arama motorları programları tarafından daha anlaşılır olacaktır. CSS, XHTML teknolojisi ile tümleşik olarak çalışarak bizlere gelecek vaadediyor.


KAYNAK :  http://bilgisayardershanesi.com/bilgisayar_dersleri/css-e-baslamak.html

CSS Nedir?


Binlerce sayfayı tek merkezden yönetebilirsiniz

Müşteriniz teklifinizi onayladı. Tasarım tamamlandı. Siteyi tam yayınlayacakken, genel müdür sizi toplantıya çağırdı. Tasarımda bazı değişiklikler yapılmasını istedi. Eğer, biçimlendirmeleri yapmak için aşağıdaki geleneksel yolları tercih ettiyseniz, yöneticinin istediği değişiklikleri yapmak çok uzun sürecektir. Her sayfanın kodlarına ulaşıp, aşağıdaki işaretli yerlerdeki kodları düzenlemeniz gerekecektir. Yüzlerce sayfaya girerek, yapılması gereken kod değişikliklerini teker-teker yapmaktan başka çareniz yoktur:
<html>
<body>
<table bgcolor="#CC6600" border="0" cellpadding="0" cellspacing="0" width="760">
<tr>
<td>
<font color="#CC6600" face="Verdana, Arial, Helvetica, sans-serif">
Müdürlüğümüzün çalışmaları, her yıl faaliyet raporlarında belgelenir.
Görüntülemek istediğiniz faaliyet raporunu tıklatın:
</font>
</td>
</tr>
</table>
<body>
</html>
CSS kullanılmış yöntem ise aşağıdaki gibi olabilirdi:
<html>
<head>
<link rel="stylesheet" rev="stylesheet" href="kabuk.css" type="text/css" />
</head>
<body>
<div id="kabuk">
<p class="spot">
Müdürlüğümüzün çalışmaları, her yıl faaliyet raporlarında belgelenir.
Görüntülemek istediğiniz faaliyet raporunu tıklatın:
</p>
</div>
<body>
</html>
CSS kullanılmış olan bu yöntemde
<body>
...
</body>
...arasındaki arasındaki kaynak kodunun, CSS kullanıl-ma-mış olan önceki yönteme göre çok daha sade olduğunu farketmişsinizdir. Kaynak kodunun sade olmasının avantajları için burayı tıklatın. Bu sadeliğin nedeni, biçimlendirme ile ilgili tüm ifadelerin (bgcolor, color, size, border, width vb), CSS içerisinde merkezîleştirilmiş olmasıdır:
kabuk.css
#kabuk{
width:760px;
background-color:#CC6600;
}
.spot{
color:#CC6600;
font-family:Verdana, Arial, Helvetica, sans-serif;
}
Müşterinin istediği değişiklikleri yapmak için, bu CSS dosyası içerisindeki ifadelerin (color, background-color vb) değiştirilmesi yeterli olacaktır. Bu CSS'i kullanan tüm sayfalarınızın görüntüsü bir anda değişecektir.
Sitenin genelinde bu kadar büyük değişiklikleri yapmanın çok kolay olduğunu müşterilerinize sezdirmeyin. Başka değişiklikler de isterler! Aksi de olabilir; müşteriler istedikleri değişikliklerin ne kadar uğraştırabileceğini bilmezler (Hatta bazen biz bile sezemeyiz!). Çok sayıda müşterisi olan tasarım şirketleri CSS'ten yararlanırlarsa, işleri kolaylaşır.

Yazıcı-dostu sayfalar oluşturmak çok kolaylaşır

Yazıcı dostu sayfalar, kağıt ve mürekkep israfını önler. Web sayfasındaki içeriğin, kağıttayken de anlaşılır ve kolay okunur kılar. Bir yazıcı-dostu sayfanın diğer sayfalardan farkı; yazıcı-dostu sayfalar sadedir. Resimler ve renkler kaldırıldığında, metinler kağıda sığar hale getirildiğinde vs sayfa yazıcı-dostu hale gelmiş olur. Konuyu örneklendirmek gerekirse... Sağdaki sayfa, soldaki sayfanın yazıcı-dostu haline gelmiş durumudur. Numaralandırılmış metinler dışında herşey kaybolmuş durumdadır:
Yazdırılacak bir sayfa
Şekil 1: Yazdırılacak bir sayfa.

 
Yazıcıya gönderilecek hali.
Şekil 2: Yazıcıya gönderilecek hali.
Şekil 1'deki sayfanın (kaynak kodu) yazıcı-dostu halini üretmek için aşağıdaki yapılması gerekiyor;
Gereksiz kısımların yazdırılmaması : Daire ile işaretlenmiş bölgelerin yazdırılmasının engellenmesi gerekli. Bu ise yazıcıdan gizleme yöntemiyle halledilir. Web tarayıcınız, yazıcıya göndermeden önce sayfa üzerinde istediğiniz biçilendirmeleri yapmanıza imkan tanır. Bu imkandan, daha sonra anlatılacak
media="print"
ayarıyla faydalanılabilir. Örnekte;
<link href="/lib/css/kent.css" rel="stylesheet" type="text/css" media="screen" />  
<link href="/lib/css/kent_yazdir.css" rel="stylesheet" type="text/css" media="print" />
Renkleri kaldırma : Numaralandırılmış bölgelerdeki metinlerin siyah-beyaz halde yazdırılması ve kağıttaki tüm satırı doldurması sağlanmalı.
Bu iki biçimlendirme yapıldığında, sayfa yazıcı-dostu hale gelmiş olur. Şekil 2 incelenebilir. Numaralanmış bölgeleri inceleyiniz.
CSS yöntemi tercih edilmiş bu sayfayı görüntülemek için burayı tıklatın. Bu sayfa, renkleri ve resimleriyle, bilindik bir sayfa görüntüsüne sahip gibi görünebilir. Farkını görmek için "Yazdırma önizleme" yapın; sayfanın yazıcı-dostu halde görüntülendiğine şahit olacaksınız (Şekil 2'deki gibi). Bu sayfanın kaynak kodunu inceleyelim ve kendiliğinden yazıcı-dostu hale dönüşmesini sağlayan unsurları görelim. Kaynak kodundaki açıklamaları dikkatle okuyunuz:
...
<html>
...
<head>
...
<!--
Firefox, IE, Opera ve diğer tüm tarayıcılar P, H1, FORM... gibi tüm
HTML etiketleri için kendilerine has
biçimlendirmeler atarlar (margin, padding vb değerler).
Tasarımda 1 pikselin bile büyük önemi varken,
her tarayıcının "kendi kafasına göre belirlediği" bu varsayılan değerler,
sayfalarınızın farklı tarayıcılarda farklı-farklı görünmesine ve hatta
sayfanın kaymasına neden olabilir.
Bu sorunun üstesinden gelmek amacıyla,
tüm etiketler için varsayılan biçimlendirmeleri biz belirliyoruz ki;
tarayıcıların, görünüme kendilerinin
karar vermesine mahal kalmasın.
(Bu satırdaki media="screen" ayarının ne işe yaradığı aşağıda anlatılacak.)
-->

<link href="
/lib/css/kent_sifirla.css" rel="stylesheet" type="text/css" media="screen" />
<!--
Başka bir CSS daha bağlanıyor.
Ama media="screen" ayarı tercih edilerek,
bağlanan bu CSS içindeki biçimlendirmelerin yalnızca,
ziyaretçi sayfada gezinirken uygulanması sağlanıyor.
Bu ayardan dolayı, ziyaretçi sayfayı yazdırdığında;
tarayıcınız, bu CSS içerisindeki tüm biçimlendirmeleri
kaldırdıktan sonra sayfayı yazıcıya gönderecektir.
Böylece; renklendirmeler, nesnelerin arkasına döşenen
estetik resimler, mesafe ayarları vb kalkacak ve sayfa
biraz sadeleşecektir.
-->

<link href="
/lib/css/kent.css" rel="stylesheet" type="text/css" media="screen" />
<!--
Başka bir CSS daha bağlanıyor. Ama tıpkı bir önceki satırda olduğu gibi
media="print" ayarı tercih edilerek, bağlanan bu CSS
içindeki tüm biçimlendirmelerin yalnızca,
ziyaretçi sayfayı yazdırdığında uygulanması sağlanyor.
Bu ayardan dolayı, ziyaretçi sayfayı yazdırdığında;
tarayıcınız, bu CSS içerisindeki tüm biçimlendirmeleri
uyguladıktan sonra sayfayı yazıcıya gönderecektir.
Bu CSS içerisindeki biçimlendirmeleri incelediğinizde,
bu biçimlendirmelerin,
sayfadaki bazı nesnelerin gizlenmesine yönelik
biçimlendirmeler olduğuna şahit olacaksınız.
Bu gizlemelerin amacı sayfayı
biraz daha sadeleştirmek ve sayfada yalnızca
metinlerin kalmasını sağlamaktır.
-->

<link href="
/lib/css/kent_yazdir.css" rel="stylesheet" type="text/css" media="print" />
...
</head>
...
<body>
...
</body>
</html>
Eskiden, resimlerle ve renklerle dolu bir sayfanın yazıcı-dostu sürümünü oluşturmak için şu aşamalar izlenirdi; sayfanın kopyası alınırdı... Bu kopyadaki tüm resimler ve renkler kaldırılarak sayfa siyah-beyaz hale getirilirdi. Asıl sayfadan bu sadeleştirilmiş kopyaya bir bağlantı verilir ve Ziyaretçi'den bu sadeleştirilmiş kopyayı yazdırması istenirdi. "Basit ve kolay anlaşılır" denilebilecek bu geleneksel yöntemin birçok dezavantajı vardır;
  • İş gücü kaybı. Kopyası alınan asıl sayfadaki; metinlerde veya Programcının geliştirdiği kaynak kodlarda bir düzenleme/düzeltme yapılması gerektiği zaman, yazıcı-dostu kopyada da aynı düzenlemeyi yapmak gerekir ki bu durum, bakımın-onarımın müşakkatli bir iş haline gelmesine neden olur.
  • Arama motorları nezdinde potansiyel sorunlar. İlave önlemler almadığınız sürece (META, Javascript vb yollarla), arama motorları bu yazıcı-dostu kopyaları da indeksleyecek ve belki de ziyaretçiler arama sonucunda doğrudan yazıcı-dostu sayfanıza yönlendirilecekler.
  • Hükmedilmesi gereken dosya sayısında artış. Site ne kadar az dosyadan oluşursa o kadar iyidir. Dosya sayısı artınca, sitenin taşınması zorlaşır (başka bir sunucuya aktarma vb). Sitenizin toplam Megabayt büyüklüğü artar ve bu nedenle sitenin yedeğinin alınması zorlaşır. Eğer siteniz çok dilli ise üstelik programlama da (ColdFusion, ASP.NET, PHP, JSP vb) kullanılyorsa işiniz daha da zor demektir.
Tasarımcılar artık alışkanlıklarını değiştirmek zorundalar... Eski/geleneksel yöntemler terk edilip CSS'li yönteme geçildiğinde tüm bu badirelerden kurtulunabilir... CSS yardımıyla regarenk sayfaların kendiliğinden yazıcı-dostu hale dönüşmesini sağlamak mümkün (yukarıdaki yazdırma örneğinde olduğu gibi)

Sayfalarınızı, mobil cihazlar ile gezilebilir hale getirebilirsiniz

[Mobil cihaz sunum görüntüleri]
Artık sayfalarınızı, ilave çok fazla iş yapmaksızın mobil cihazlardan (XHTML uyumlu cep telefonlarından vb) erişilebilir hale getirmek mümkün. CSS standartlarına uyumlu web tarayıcıları, her aygıt için farklı biçimlendirmeler uygulamanıza imkan tanır. Örnek aygıtlar:
  • Screen: Bilgisayar ekranı.
  • Print: Yazıcı
  • Projection: Sunum cihazları (projektörler)
Eğer sayfanız bir cep telefonu tarafından görüntüleniyorsa, cep telefonunun içindeki tarayıcı yüksek ihtimalle CSS'i desteklemiyor olacağından hiçbir CSS biçimlendirmesini ve Javascript unsurunu yorumlamayacaktır. Bu nedenle; sayfalarınızın cep telefonlarından da gezinilebilmesini istiyorsanız, tüm biçimlendirmeleri (renklendirmeler, arka plan resimleri vb) CSS ile yapmalı ve mecbur kalmadıkça Javascript kullanmamalısınız.
Aygıta özel biçimlendirmeler yapmak için CSS'te birkaç farklı yazım seçeneği vardır;
<!--
Yukarıdaki örnekte faydalanılan imkan
-->

<html>
<head>
<link href="/lib/css/genel.css" type="text/css" media="print"/>
</head>
<body>
...
</body>
</html>




<!--
Bir başka ifade imkanı. Bir önceki imkanla hemen-hemen aynı durumlarda faydalanılmalı.
-->

<style stype="text/css">
@import url(/lib/css/genel.css) print;
</style>




<!--
Bir başka ifade imkanı. Bir <style>...</style> etiketi arasında veya
bir CSS içerisinde kullanılabilecek ifade yöntemi.
-->

<style stype="text/css">
media print {
/*yazıcı için biçimlendirmeler buraya*/
}
</style>




<!--
Bir başka ifade imkanı. Bir sayfaya özel yazıcı-dostu biçimlendirmeleri
yapmak istediğinizde bu ifade imkanını kullanabilirsiniz.
-->

<style type="text/css" media="print">
/*yazıcı için biçimlendirmeler buraya*/
</style>
Aygıtlara özel CSS biçimlendirmesi konusu W3C belgelerindeki 7.2 Specifying media-dependent style sheets başlığı altında arz edilir. Daha ayrıntılı ve güncel bilgi için söz konusu belgeye başvurulabilir.

Tarayıcıya gönderilen kodunuzu sadeleştirebilirsiniz

Sayfadaki tüm içerikler, biçimlendirmeler, resimler vb istemciye (sayfayı görüntülemek isteyen ziyaretçinin web tarayıcısına) HTML/XHTML kodları halinde gönderilir. Bu kodların sade ve basit oluşunun, yüksek ziyaret alan web siteleri için önemleri büyüktür;
  1. İnternete çıktığı bant genişliği kısıtlı olan ziyaretçiler (örn: 56 Kbit'lik çevirmeli bağlantılar, GPRS kullanan cep telefonları vb), daha az sayıda karakter içeren sayfalarınızı daha kısa sürede indirebilecektir. Sayfalar, internetten, daha kısa sürede indirilecek, ziyaretçiniz, toplam sürede, daha fazla sayfa ziyaret edecektir. Sayfalarınızın hızlı yüklenmesi, ziyaretçinizin siteniz hakkındaki memnuniyetini artıracaktır.
  2. HTML kodlarınız ağırsa (sade değilse), ziyaretçileriniz siteyi gezerken, sunucunuzun bant genişliğini "sömüreceklerdir".
  3. Cep telefonları gibi basit işlemcilere sahip cihazlar, sayfayı yorumlarken zorlanmazlar.

Sayfa tasarımı konularındaki tekrar kullanılabilirlik artar

...

Sayfa arayüzleri için tema hazırlamak kolaylaşır

Sayfa arayüzleri için tema hazırlamak kolaylaşır
CSS ile tasarım uygulanmamış bir tablo, yukarıdaki gibi olabilirdi. Tablo, cep telefonlarında bu şekilde görünür. Çünkü, sayfada CSS kullanılmış olsa bile, cep telefonları tabloyu yukarıdaki gibi gösterecektir. Bunu CSS ile onlarca farklı temaya büründürebiliriz. Tıklatarak sayfanın kodunu ve CSS'ini incelemek üzere sayfayı açabilirsiniz. "Link edilen" CSS dosyası olduğunu göreceksiniz.
Tema 1:
<link href="tema-1.css" rel="stylesheet" type="text/css" />
CSS ve Tema - 1
Tema 2:
<link href="tema-2.css" rel="stylesheet" type="text/css" />
CSS ve tema - 2

Teknik ekibin beraber iş yapması kolaylaşır

Eskiden, oluşturulmuş bir web sitesinin tüm yaşamı boyunca (!), programcı tasarımcı ve içerikçiler birlikte siteyi idame ettirirlerdi. Fakat günümüzde, CMS'ler sayesinde, içerikçiler siteyi tek başlarına yıllarca idame ettirebilmektedirler. Fakat, bazen müşteriler sitelere öyle içeriklerin eklenmesini isterler ki; bu içeriğin bir tasarımsal çalışması ile siteye eklenmesi ihtiyacı doğar. Eğer tasarımcı, her türlü içeriğin siteye şıklıktan taviz vermeden eklenebilmesi için bir CSS-style-class kütüphanesi oluşturursa, içerikçiler, metin editörlerinde (FCK, RadEditor, SoEditor vs) aşağıdaki gibi CSS-class atamaları yaparak, sayfanın otomatik olarak şık hale gelmesini sağlayabilirler. Böylece, CSS tasarından önceden hazırlanmış olan CSS biçimlendirmeleri sayesinde, içerikçinin tasarımcıya ihtiyacı kalmaz:
<table class="icerikdokumu">
<thead>
<tr>
<td>İsim
</td/>
<td>Telefon
</td/>
</tr>
</thead>
<tbody>
<tr>
<td>Eşref Atak
</td/>
<td> +90 0211 324 43 34
</td/>
</tr>
<tr>
<td>Kemal Güler
</td/>
<td> +90 0211 123 34 56
</td/>
</tr>
</tbody>
<tfoot>
<tr>
<td>2 kişi
</td/>
<td>&nbsp;
</td/>
</tr>
</tfoot>
</table>
Yukarıdaki kod, aynı zamanda, tema örneğindeki sayfaların da kaynak kodudur.
Benzer şekilde; site henüz yeni inşa edilirken tasarımcı ile geliştirici kendi aralarında anlaşıp mutabakat yaparak, geliştiricinin hızlı ilerlemesini sağlayabilirler. Örneğin; eğer sayfaya bir haberin başlığı ve spotu bastırılacaksa, tasarımcı der ki; sitenin hangi sayfasında olursa olsun, başlık için <P> etiketine "baslik" class'ını ayarla, spot için ise "spot" class'ın ayarla. Sayfa otomatik olarak biçimlenecektir. Geliştirici tasarımcının dediklerini yapar:
<p class="baslik">Başbakan Tayyip Erdoğan köşkte</p>
<p class="spot">Erken seçim yapmayacak olan başbakan, bunu cumhurbaşkanına da anlatacak</p>
Bu sayede, site teknik ekibinin işleri kolaylaşır.

Erişilebilir sayfalar hazırlamak

[...]

CSS demek TABLE'ları unutmak demek değildir

[Workcube'deki tablolar. O tabloları DIV ile yapmaya çalışmak bir çılgınlıktır. Tablolar, içerik sergilemek içindir. Yerleşimi ve estetiği ayarlamak için değil. Sıkıştığında başvurulacak bir kaçış noktası hiç değildir.]
...

Araçlar

Tarayıcı varsayılan biçimlendirmelerini sıfırlamak

[...]

STYLE etiketi ve STYLE niteliği: <STYLE></STYLE> ve STYLE=""

İkisi de aynı şey;
STYLE niteliği ile CSS biçimlendirmesi yapmak:
STYLE-class belirterek CSS biçimlendirmesi yapmak:
<style type="text/css">
.gorunmeyenoge{
   display: none;
}
</style>
<div class="gorunmeyenoge">Başbakan Tayyip Erdoğan köşkte</div>
Peki, arasındaki fark ne?
  • Tekrar kullanılabilirlik biter
  • Merkezileştirme biter

Gölgelerin gücü adına: Javascript ve CSS

Bir nesneyi gizlemek için
<script type="text/javascript">
   //nesne gizlenir
   document.getElementById('islemyapiliyor').style.display = 'block';

   //nesne gizlenir
   document.getElementById('islemyapiliyor').className = 'gorunmeyenoge';
</script>
<style type="text/css">
.gorunmeyenoge{
   display: none;
}
</style>
 
<div id="islemyapiliyor">Başbakan Tayyip Erdoğan köşkte</div>
Dahası var... AJAX ve CSS kullanılarak, masaüstü EXE yazılımlar ile aynı hızda ve performansta çalışan web uygulamaları geliştirmek mümkün hale gelmiştir. Gmail, bunun en büyük örneğidir.

CSS'i bildiğiniz kadar XHTML'i de iyi bilmelisiniz

[HTML'deki h1, h2, h3 etiketlerini Javascript ile parse etmek suretiyle İçindekiler listesini hazırlayan örnek]
...

CSS deyince neden hep <DIV> <UL> <LI> etiketleri?

CSS destekli sayfalarda çoğunlukla DIV, UL ve LI etiketleri kullanılmaktadır. Çünkü, CSS biçimlendirmeleri kullanılarak, bu etiketler istenilen yöne doğru dizilebilmektedir:
Soldan sağa:
Soldan sağa
Sağdan sola:
Sağdan Sola
Yukarıdan aşağıya:
Yukarıdan aşağıya
Bu bir esnekliktir. Bu özelliğinden dolayı, DIV, UL, LI etiketleri sık sık tercih edilmektedir. Yukarıdaki örnekte görüldüğü üzere, eğer hazırladığınız dinamik sayfa Arapça, Farsça gibi sağdan sola doğru yazılan bir dilde yayınlanacaksa, DIV-UL-LI etiketlerinin bu özelliği sayesinde, yazıları sağan sola doğru dizebilirsiniz. Üstelik bunu yapmak için, geliştiricinin herhangi bir değişiklik yapmasına gerek yoktur!
DIV-UL-LI etiketlerinin gücünü göstern bir örnek uygulama için burayı tıklatın: DIV-UL-LI etiketleri ile yaslama

Bölgeleri belirleyin

Sayfalardaki ortak bölgeleri belirleyin ve klasikleştirin. İşte, her projede oluşturulan bazı klasik bölgeler…
  • Uyarı ve bilgilendirme şeritleri
  • Geçerlilik denetimi (validasyon) mesajları
  • Formlardaki bilgilendirme metinleri
  • Sayfalamalar (Pagination)
  •  “Teknik sorun var” sayfaları
  • Başlıklar (H1, H2, H3…), Spotlar vs
  • Formlar, metin kutuları, açılır listeler, düğmeler…
Bu bölgelere birer isim verin. CSS Class Name’lerinde ve CSS ID’lerinde kullanacağınız bu isimleri standartlaştırın ve klasikleştirin. Her projede isimleri ve bölgeleri yeniden keşfetmeyi bırakın. Ekipteki herkes, isimleri ezberlesin. En azından, elinde özet bir doküman olsun.
İletişim Rehberi
CSS Anket

Adı Soyadı
Tarih Etkinlik

Uygulamalı Örnek: Validasyon mesajları:

Uygulamalı Örnek: Validasyon mesajları:
Uygulamalı Örnek: Validasyon mesajları:2

CSS:
 
.ValidationMessages{
         background: red;
         border: solid 2px red;
}
 
HTML:
 
<div class=”ValidationMessages”>
<ol>
   <li> <a href=”…”>Projenin adı bilgisi gerekiyor.</a></li>
   <li> <a href=”…”>Yatırımcı bilgisi gerekiyor. </a></li>
   <li> <a href=”…”>Sektörler bilgisi gerekiyor. </a></li>
</ol>
</div>
 

CSS'çiler neyi yapmaz?

  • <p>&nbsp;</p> kullanmazlar.
  • <br /> kullanmazlar
  • spacer.gif resimcikleri kullanmazlar

CSS, anlatmakla neden bitmez?

Robots.txt Dosyası Kullanım Robotları Yölendirme Kontrol


Robots.txt Dosyası Kullanım Robotları Yölendirme Kontrol Robots.txt dosyası arama motorları ve örümceklere sitenizdeki dosya ve klasörleri gezip kayıt etmeleri için izin veren ya da engelleyen dosyadır. Dosya kendi başına normal bir text dosyasından farksızdır ve basit şekilde Notepad ile hazırlanabilir. Anasayfanızın ya da sitenizin bulunduğu ana klasöre koyulmalıdır.

Neden robots.txt dosyasına ihtiyacım var?
Tüm önemli arama motorları, sitenize girer girmez öncelikli olarak bir robots.txt dosyası arar. Sitenizin herhangi bir bölümüne, örümceklerin girmesini istemiyorsanız ya da girmelerini engellemek istemiyorsanız bile bir robots.txt dosyası bulundurmak her zaman için yararlıdır. Çünkü bu dosya örümcekler için bir karşılama dosyası, menü gibi görev yapar.

Neden örümcekleri engellemek isteyebilirim?

1. Site henüz tamamlanmamış olabilir. Ya da henüz tam oalrak bitmemiş sayfalar içeriyor olabilir. Ve bu durumda sitenizin ya da sayfalarınızın yarım yamalak kayıt edilmesini istemeyebilirsiniz.

2. Şifrelemeye gerek duymadığınız ama yine de sizin için özel olan bir içeriğe ya da sitenizde bir bölüme sahip olabilirsiniz ve bunun arama motorları tarafından kayıt edilmesini ve aramalarda çıkmasını istemeyebilirsiniz.

3. Hata sayfalarının, cgi-bin gibi klasörlerin ya da teşekkür ettiğiniz, içinde sadece "tamam" gibi kısa mesajlar bulundurduğunuz dosya ve klasörlerinizin kayıt edilmesi kimsenin işine yaramayacaktır.

4. Birbirine benzeyen, geçişli sayfalarınız varsa bütün robotların aynı şeyi kaydetmesini istemeyebilirsiniz. Bu spam riski doğurabilir.

5. Yer almak istemediğiniz arama motorlarından ya da e-mail toplayan zararlı örümceklerden robots.txt dosyası aracılığıyla kurtulabilirsiniz.

Robots.txt dosyası oluşturmak
Robots.txt dosyasını herhangi bir text editor ya da notepad ile oluşturabilirsiniz. Temelde içeriği şu şekildedir :
User-Agent: [Örümcek ya da Bot ismi]
Disallow: [Klasör ya da Dosya ismi]

Robots.txt ile belirli bir dosyayı belirli bir bottan korumak
Mesela "Haberler" diye bir bölüm oluşturuyorsunuz ve henüz tamamlanmadan robotların gelip kayıt etmesini istemiyorsunuz. Bu durumda, hedef tüm robotlar olduğu için özellikle robot ismi belirtmek yerine yıldız işareti "*" kullanmalısınız. Bu tüm robotları kapsayacaktır.
User-Agent: *
Disallow: /haberler/

Koruduğunuz bölüm isminin başına ve sonuna slah işareti "/" koymanız o klasördeki tüm dosyaları kapsayacaktır.

Tüm robotlara kayıt izni vermek
Hedefimiz yine tüm robotlar olduğu için yıldız "*" işareti kullanarak Disallow bölümünü boş bırakıyoruz.
User-agent: *
Disallow:

Tüm robotları dosya ve klasörlerinizden uzak tutmak

Yukarıdaki koda çok benzeyen ama ufak bir değişikliği olan bir kod ile tüm robotları dosya ve kalsörlerinizden uzak tutabilir, kayıt etmelerini engelleyebilirsiniz.
User-agent: *
Disallow: /

Robots.txt ile birden fazla klasör engellemek
Ayarları dikkatli bir şekilde yapmalısınız. Yoksa istemediğiniz dosya ve klasörleri kayıt ettirebilir, istediklerinizi engelleyebilirsiniz. Diyelim ki "cgi-bin" klasörünüzün içindeki bazı dosyaların kayıt edilmesini istemiyorsunuz.
User-agent: *
Disallow: /cgi-bin/
Disallow: /_borders/
Disallow: /_derived/
Disallow: /_fpclass/
Disallow: /_overlay/
Disallow: /_private/
Disallow: /_themes/
Disallow: /_vti_bin/
Disallow: /_vti_cnf/
Disallow: /_vti_log/
Disallow: /_vti_map/
Disallow: /_vti_pvt/
Disallow: /_vti_txt/

Her klasör için ayrı bir komut yazmak en verimlisidir.
Sadece Altavista örümceğinin girmesini istemediğimiz klasörümüze, Altavista robotunun ismi olan Scooter ı ekliyoruz.

User-Agent: Scooter
Disallow: /

Google'ın resim dosyalarımızdan uzak durmasını istiyorsak :
User-Agent: Googlebot-Image
Disallow: /images/

Eğer dosyalarınız "images" klasöründe değil ve dağınık olarak değişik yerlerdeyse o zaman :
User-Agent: Googlebot-Image
Disallow: /
 

JotForm İle Form Oluşturmak Artık Daha Kolay


jotform 150x150 JotForm İle Form Oluşturmak Artık Daha KolayBugün internette yeni keşfettiğim bilgiyi tüm net alemine duyurayım dedim.JotForm ile sizlerde web siteleriniz için kolayca formlar oluşturabilirsiniz. İletişim formları, dosya yükleme, anket, yıldız puanlama, derecelendirme vb. formları kolayca oluşturabiliyorsunuz. Formlarınıza güvenlik kodu, e-posta kontrolü, minimum-maksimum karakter sınırlaması, otomatik tamamlama gibi daha bir çok ek özellikler tanımaktadır. Bunları sürükle bırak, ve özelliklerini değiştirme penceresinden kolayca değiştirebiliyorsunuz. Web sitesine erişmek için burayı tıklayabilirsiniz,site türkçedir. Karşınıza ilk olarak bir tanıtım videosu gelecektir fakat video ingilizcedir. Ama yaptıkları gayet basit olduğundan sadece izleme ile anlaşılabilir. Konunun daha iyi özümsenmesi için gelin birlikte bir iletişim formu yapalım…

JotFrom İle Adım Adım Form Oluşturma

1. İlk olarak siteyi buradan ziyaret ediyoruz. Karşımıza şöyle bir ekran gelecektir.
1 300x235 JotForm İle Form Oluşturmak Artık Daha Kolay
2.Yukarıdaki ekranı X(çarpı) işaretinden kapadıktan sonra ise site şu şekilde açılmış olacaktır.
2 300x193 JotForm İle Form Oluşturmak Artık Daha Kolay
3. Şimdi form oluşturmaya başlayabiliriz. Yukarıdaki resimde sarı çizgi ile belirtilen yerdeki Başlık alanını boş alana sürükle bırak yapıyoruz. Karşımıza şöyle bir görüntü gelecektir.
3 300x104 JotForm İle Form Oluşturmak Artık Daha Kolay
4. Başlık yazısını düzenlemek için o alana tıklayınız ve İletişim Formu olarak değiştiriniz.
4 300x96 JotForm İle Form Oluşturmak Artık Daha Kolay
5. Yazı kutusu alanını da aynı şekilde sürükle bırak yapınız ve alanın adını aynı şekilde tıklayın ve Ad Soyadolarak değiştiriniz.
5 300x128 JotForm İle Form Oluşturmak Artık Daha Kolay
6. E-posta alanınıda aynı şekilde sürükleyin ve adını e-posta yapın. Sonrasında da Metin Alanını sürükle bırak yapın ve adını Mesaj değiştirin.
6 300x145 JotForm İle Form Oluşturmak Artık Daha Kolay
7. Şimdi form elemanlarını ekledik ve bu elemanlara ekstra özellikler kazandıracağız. Yani zorunlu alanları belirleyeceğiz. Bunun için resimdeki ayar dişlisine tıklayın ve açılan yerden zorunluyu seçin.
7 300x137 JotForm İle Form Oluşturmak Artık Daha Kolay
8. Aynı şekilde e-posta alanı da yapın ve sonuç resimdeki gibi kırmızı yıldız (*) olmalıdır.
8 300x138 JotForm İle Form Oluşturmak Artık Daha Kolay
9. Şimdi ise yukarıdaki resimde gösterilen Özellikleri Göster alanına tıklayın. Buradan girilen e-posta adresinin e-posta yazım şekline uygun olup olmadığının kontrolünü yaptırma ayarını ayarlayacağız. Onun için aşağıdaki resimdeki gibi Değer Kontrolü alanını E-posta olarak seçiniz. Daha sonra Ayarları Kapatdüğmesini tıklayınız.
9 274x300 JotForm İle Form Oluşturmak Artık Daha Kolay
10. Formu kaydetmek için sol üst köşedeki Kaydet düğmesine tıklayınız.
10 300x170 JotForm İle Form Oluşturmak Artık Daha Kolay
11. Tıkladıktan sonra size iletişim kutusuna yazılan mesajların hangi e-posta adresine gönderileceğini soracaktır o alanı da aşağıdaki resimde ki gibi kendi adresinizi yazarak doldurunuz ve E-posta Adresimi Kaydet‘e basınız.
11 300x140 JotForm İle Form Oluşturmak Artık Daha Kolay
12. Aşağıdaki resimde görüldüğü üzere ilk olarak formu ön izlemek için Ön İzle butonuna tıklayın. Karşınıza aşağıdaki gibi pencere gelecektir.
12 300x203 JotForm İle Form Oluşturmak Artık Daha Kolay
13. Arkasından formu gördükten sonra kaynak kodu almak için de Form Kaynak alanına tıklayınız. Buradaki kodu da iletişim kodunu kullanacağınız ister HTML ister PHP veya vb. sayfaya yapıştırınız.
13 300x156 JotForm İle Form Oluşturmak Artık Daha Kolay
14. Şu an itibariyle form oluşturuldu tek olarak bir sayfaya yapıştırmak kaldı. Siz de deneme.html adı altında bir html dosyası oluşturun ve kaynak kodunuzu aşağıdaki gibi yapıştırın.
14 300x142 JotForm İle Form Oluşturmak Artık Daha Kolay
15. Kaydettiğiniz sayfayı girip çalıştırdığınız şu şekilde görüntüyü almış olmanız gerekecektir.
15 300x219 JotForm İle Form Oluşturmak Artık Daha Kolay
Evet, sanırsam biraz resimli ve uzun bir anlatım oldu. Gayet sade olduğu için herkesin anladığını düşünüyorum. Umarım faydalı bir yazı olmuştur. Siz de kendiniz için formları bu şekilde hazırlayıp daha bir çok ayarları da panelinden yapabilirsiniz. Üye olup formlarınızı da saklayabilirsiniz. Güle güle kullanın şimdiden….

KAYNAK: http://www.phpsorunu.com/jotform-ile-form-olusturmak-artik-daha-kolay.html

Photoshop Dersleri

Arkadaşlar Afyon Kocatepe Üniversitesi Enformatik Bölümü Öğretmeni Mahmut Kantar Hocamızın photoshop dersleri hakkında 9 tane kendi hazırladığı video var.Ama bloggere yükleyemiyorum boyutları çok büyük olduğu için bir dosya barındırma servisine .rar dosyası olarak atmayı düşünüyorum.

LİNK-1: Photoshop Genel Tanıtım

http://www.roosle.com/PSC8BRIERZVX/ders1.rar.html

LİNK-2: Layer(Katman)Yapısı ve Özellikleri

http://www.roosle.com/J4ZMPD0HJSIX/ders2.rar.html

LİNK-3: Rulers/Grids (Cetvel)

http://www.roosle.com/SI6Z77MSYK3N/ders3.rar.html

LİNK-4: Filtreler ve Yazı Efektleri

http://www.roosle.com/ARES4I9M4OJI/ders4.rar.html

LİNK-5: Örnek Çalışmalar-1

http://www.roosle.com/4BFLL7GIQI0K/ders5.rar.html

LİNK-6: Örnek Çalışmalar-2

http://www.roosle.com/9GVGED1NINKG/ders6.rar.html

LİNK-7: Örnek Uygulama-3

http://www.roosle.com/XB49TN298VAC/ders7.rar.html

LİNK-8: Örnek Uygulama-4 WEB SAYFASI YAPIMI

http://www.roosle.com/O6UTNMD1TFEY/ders8-1.rar.html

LİNK-9: WEB SAYFASI (LİNK-8 DEVAMI)

http://www.roosle.com/K5VDW35YWK6O/ders8-2.rar.html



LİNKLERDEN VİDEOLARI TEK TEK İNDİREBİLİRSİNİZ.ŞİMDİDEN İYİ ÇALIŞMALAR






28 Kasım 2012 Çarşamba

En İyi Blog Tanıtımı Yapmak İstiyorsanız

Etkili blog/site (yada blog site) tanıtımı yapmanın yolu içerik tanıtımıdır. Çoğu kişi sadece backlink almanın sitesine yeterli olduğunu düşünüyor. Oysa etkili tanıtım için yapılabilecek çok şey var. Anlattıklarımın hepsini veya bir kısmını yapmanız sitenizin yararına olacaktır. 

Not: Çok yeni sitelerinize uygulamayınız. Siteniz bir az otursun, aksi halde filtre riski ile karşı karşıya kalmanızı istemem.

1. İlk olarak etkileyici bir makale yazın. Bunu her kes yapıyor demeyin, üşengeçliği bir tarafa bırakıp oturup makalenizi yazın. Konsantre olun, tüm hayal gücünüzü kullanarak olağanüstü bir makale yazın. İyi iş çıkarın. Tabii içine linkinizi yerleştireceksiniz.
Makalenizi en iyi 20 makale sitesine ekleyin.
Blogunuzda yayınlayın.
Guest blogger olarak başka bir blogda yayınlayın. 

2. HootSuite, Ping.fm veya benzeri bir servisi kullanıp içeriğinizi en iyi 30 sosyal medya sitesine ekleyin.

3. Makalenizi PowerPoint sunumuna dönüştürün. Sonuna linkinizi eklemeyi unutmayın. Linklerinizi ilgi çekici şekle getirmelisiniz, bunu unutmayın. Oluşturduğunuz sunumu bildiğiniz sunumların paylaştığı ortamlara yükleyin. Aşağıdaki siteler olabilir:
Slideshare.net
MyPlick.com
SlideBurner.com
Slideboom.com
AuthorStream.com
Empressr.com
MyPlick.com

4. Daha önce oluşturduğunuz sunuma ses ekleyerek video hazırlayın. Videoya linkinizi ekleyeceksiniz. Konuşma yapmak zorunda değilsiniz, müzik ekleseniz olur. Sesiniz güzelse şarkı da söyleyebilirsiniz. 
Ekleyeceğiniz siteler:
YouTube
MetaCafe.com
Vimeo gibi...

5. Makalenizi PDF e dönüştürün. (Doc2PDF.net gibi ücretsiz bir hizmetten yararlanın) E-book dizinlerine ekleyin. Örnekler:
Free-ebooks.net
GetFreeeBooks.com
Forumlarda paylaşabilirsiniz. Hayal gücünüze kalmış artık.

6. Daha önce hazırlamış olduğunuz PDF dosyanızı dosya paylaşım sitelerine yükleyin.
DocStoc.com
Scribd.com
eSnips.com
Calameo.com
Issuu.com
Yudu.com
ButterflyReports.com

7. Makalenizi blog topluluklarında paylaşın. 
BloggersBase.com
BlogEngage.com
gibi...

Bu kadarı yeterli mi?
Daha yapılabilecekler var aslında. Örneğin; 
hazırladığınız makaleyi haftanın makalesi v.s paylaşılan ortamlarda paylaşmak; 

OdioGo.com tarzı servisleri kullanarak makaleyi podcasta çevirip podcast dizinlerde paylaşmak (iTunes, PodcastAlley.com, PodFeed.net, Podcast.com) gibi;

Tutoriallar oluşturup paylaşmaya izin veren sitelerde paylaşmak (eHow.com, Good-Tutorials.com, Tutorialized.com, Designm.ag) diye devam ediyor.

Dikkat ettiyseniz facebook ve tweeteri, rss dizinlere v.s daha hiç bulaşmadım. 

Kafanız karıştı mı?

Amacıma ulaştım öyleyse 

KAYNAK :  http://forum.iyinet.com/blog-dunyasi/156246-en-iyi-blog-tanitimi-yapmak-istiyorsaniz.html

Konsol Ekranında Renkli Yazı


using System;
using System.Runtime.InteropServices;

namespace TextColor1
{
class MainClass
{
[DllImport("kernel32.dll")]
public static extern bool SetConsoleTextAttribute(IntPtr hConsoleOutput,
int wAttributes);
[DllImport("kernel32.dll")]
public static extern IntPtr GetStdHandle(uint nStdHandle);

public static void Main(string[] args)
{
uint STD_OUTPUT_HANDLE = 0xfffffff5;
IntPtr hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
// increase k for more color options
for (int k = 1; k < 255; k++)
{
SetConsoleTextAttribute(hConsole, k);
Console.WriteLine("{0:d3} I want to be nice today!",k);
}
// final setting
SetConsoleTextAttribute(hConsole, 236);

Console.WriteLine("Çıkmak için Enter tuşuna basın...");
Console.Read(); // wait
}
}
}

EKRAN GÖRÜNTÜSÜ
KAYNAK:  http://www.bilgisayardershanesi.com/Y4888-konsol-ekraninda-renkli-yazi.html