Yatay Açılır Menü Yapımı

HTML Kodları

 

<html>

<head>
<meta http-equiv=”content-type” content=”text/html; charset=utf-8″>
<title>CSS Yatay Açılır Menü Tasarımı</title>
<style type=”text/css”>
body{
margin: 0;
padding: 0; }
#menum ul{
list-style: none;
margin: 0;
padding: 0; }
#menum li {
float :left;
position: relative;
width:150px; }
#menum li ul {
display: none;
left: 0;
position: absolute;
top: 21px; }
#menum ul li a {
background: #EFEFEF;
border-color: #CCCCCC #888888 #555555 #BBBBBB;
border-style: solid;
border-width: 1px;
color: #000000;
display: block;
font: bold 12px Arial,Helvetica,Sans-serif;
margin: 0;
padding: 2px 3px;
text-decoration: none;
line-height: 16px }
#menum ul li a:hover{
background: #FFFFFF;
color:#FF0000;}
#menum li:hover ul {
display:block; }
</style>
</head>
<body>
<div id=”menum”>
<ul>
<li><a href=”#”>Ana Sayfa</a></li>
<li><a href=”#”>Hakkımızda</a>
<ul>
<li><a href=”#”>Şirket Tarihçesi</a></li>
<li><a href=”#”>Yöneticilerimiz</a></li>
<li><a href=”#”>Çalışanlarımız</a></li>
<li><a href=”#”>Faaliyetlerimiz</a></li>
</ul>
</li>
<li><a href=”#”>Hizmetlerimiz</a>
<ul>
<li><a href=”#”>Web Tasarım</a></li>
<li><a href=”#”>Hosting</a></li>
<li><a href=”#”>Logo Tasarım</a></li>
<li><a href=”#”>Danışmanlık</a></li>
</ul>
</li>
<li><a href=”#”>Referanslarımız</a></li>
<li><a href=”#”>İletişim</a></li>
</ul>
</div>
</body>
</html>

Dikey Açılır Menü Yapımı

HTML Kodları

 

<html>

<head>
<meta http-equiv=”content-type” content=”text/html; charset=utf-8″>
<title>CSS Dikey Açılır Menu Tasarımı</title>
<style type=”text/css”>
.menum ul {
margin:0;
padding: 0;
list-style: none;
width:150px;
border-bottom: 1px solid #000;
}
.menum li {
position:relative;}
.menum li ul {
position:absolute;
list-style: none;
left: 149px;
width: 150px;
display: none;
top:0; }
.menum li a {
display: block;
text-decoration: none;
color:#000000;
background-color: #9CF;
font: bold 13px Verdana;
padding: 5px;
border: 1px solid #000000;
border-bottom: 0; }
.menum li a:hover {
background-color: #012D58;
color:#FF0;}
li:hover ul{
display: block;
}
*html ul li {
float:left;
height: 1%;
}
*html ul li a {
height: 1%;
}
</style>
</head>
<body>
<div class=”menum”>
<ul>
<li><a href=”#”>Ana Sayfa</a></li>
<li><a href=”#”>Hakkımızda</a>
<ul>
<li><a href=”#”>Şirket Tarihçesi</a></li>
<li><a href=”#”>Yöneticilerimiz</a></li>
<li><a href=”#”>Çalışanlarımız</a></li>
<li><a href=”#”>Faaliyetlerimiz</a></li>
</ul>
<li><a href=”#”>Hizmetlerimiz</a>
<ul>
<li><a href=”#”>Web Tasarım</a></li>
<li><a href=”#”>Hosting</a></li>
<li><a href=”#”>Logo Tasarım</a></li>
<li><a href=”#”>Danışmanlık</a></li>
</ul>
<li><a href=”#”>Referanslar</a></li>
<li><a href=”#”>İletişim</a></li>
</ul>
</div>
</body>
</html>

Yatay Menü Yapımı

HTML Kodları

 

 

<html>
<head>
<meta http-equiv=”content-type” content=”text/html; charset=utf-8″>
<title>CSS Yatay Menü Tasarımı</title>
<style type=”text/css”>
body {
font: 12px Arial,Helvetica,sans-seref;
margin: o;
}
.menum {
list-style-type:none;
margin: 0;
padding: 0;
}
.menum li {
display: inline;
}
.menum a {
text-decoration: none;
padding: 3px 10px;
color: #000000;
background-color: #9CF;
}
.menum a:hover {
color: #ffffff;
background-color: #2586D7;
}
</style>
</head>
<body>
<ul class=”menum”>
<li><a href=”index.html”>AnaSayfa</a></li>
<li><a href=”hakkimizda.html”>Hakkımızda</a></li>
<li><a href=”urunler.html”>Ürünler</a></li>
<li><a href=”referanslar.html”>Referanslar</a></li>
<li><a href=”iletisim.html”>İletişim</a></li>
</ul>

</body>

</html>

Dikey Menü Yapımı

HTML Kodları

<html>

<head>

<meta http-equiv=”content-type” content=”text/html; charset=utf-8″ />
<title>Css Dikey menü tasarım</title>

<style type=”text/css”>

body { font: 12px Arial,helvetica,sans-serif;
margin: 0px;
}
.menum{
list-style-type: none;
margin:o;
padding: o;

}

.menum a {
display: block;
color: #000000;
background-color: #9CF;
width: 80px;
text-decoration: none;
padding: 4px 10px;
}
.menum a:hover {
font-weight: bold;
color: #ffffff;
background-color: #2586D7;
}
.menum li{
margin: 0 0 2px 0;}
</style>

</head>

<body>
<ul class =”menum”>
<li><a href=”index.html”>Ana Sayfa</a></li>
<li><a href=”hakkimizda.html”>Hakkımızda</a></li>
<li><a href=”urunler.html”>Ürünler</a></li>
<li><a href=”referanslar.html”>Referanslar</a></li>
<li><a href=”iletisim.html”>İletişim</a></li>
</ul>
</body>
</html>

CSS Zemin Özellikleri

CSS, web kodlayıcılarına (X)HTML dökümanlarına stil uygulamalarını sağlar. (X)HTML kodu ile stil kodunu birbirinden ayırarak web kodlayıcılara büyük kolaylıklar sağlar. Burada genel kullanılan CSS özelliklerini hep beraber tek tek kısaca inceleyeceğiz.

Burada tanımlanacak CSS özellikleri 15 Haziran 2005’de yürürlüğe giren CSS2.1 standartlarına göre yazılmıştır.

Sırası ile aşağıdaki özelliklere değinilecektir.

  • Zemin (Background) Özellikleri
  • Kenarlık (Border) Özellikleri
  • Font Özellikleri
  • Liste Özellikleri
  • Margin Özellikleri
  • Padding Özellikleri
  • Metin Özellikleri
  • Floating ve Positioning Özellikleri
  • Tablo Özellikleri

Burada standart bir özellik tanımı kullanılacaktır.

Yapısı : özellik_ismi: <deger>
Aldığı Değerler : alınan_deger1 | alınan_deger2 {1,4}*
Başlangıç değeri: Özelliğin atama yapılmadığı zaman ki değeri
Uygulanabilen elementler: özelliğin uygulanacağı elementlerin isimleri
Kalıtsallık: Bu özelliğin atanması halinde alt elementlerini(örn: çocuk ve torun elementlerini) etkileyip etkilemeyeceği

(*) Bu işaretin anlamı bu özelliğin 1’den 4’e kadar değer alabileceğini gösterir.

Örneğin:

p.deneme { 
    border-style: solid dashed dotted solid; 
}

CSS – Zemin(BACKGROUND) Özellikleri

Kutu Modeli

Zemin(Bacground) yukarıdaki resimde padding alanı ve içerik alanını(paragraf) kapsar.

Zemin özellikleri ile elementlere tek bir renk atanabildiği gibi background-image özelliği ile (X)HTML’in çok üzerinde eklemelerde yapılabilir.

Zemin özelliklerini tek tek incelersek:

  • background-color
  • background-image
  • background-repeat
  • background-attachment
  • background-position
  • background

background-color

Elementlerin zeminine bir renk atamak için kullanılır.

Yapısı : background-color: <deger>
Aldığı Değerler : renk | transparent
Başlangıç değeri: transparent
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

Örnek:

p { 
    background-color: #ddd; 
}

Tarayıcı Uyumu Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

background-image

Elementlerin zeminine resim eklemek için kullanılır.

Yapısı : background-image: <deger>
Aldığı Değerler : url | none
Başlangıç değeri: none
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

Örnek:

body { 
    background-image: url(/images/deneme.gif) 
}

Tarayıcı Uyumu Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

background-repeat

background-repeat özelliği background-image ile zemine eklenen resmin tekrarı ile özellikleri belirler.

Yapısı : background-image: <deger>
Aldığı Değerler : repeat | repeat-x | repeat-y | no-repeat
Başlangıç değeri: repeat
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

Örnek:

body { 
    background: white url(deneme.gif);
    background-repeat: repeat-x; 
}

Tarayıcı Uyumu Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

background-attachment

background-attachment özelliği zemine eklenen resmin sayfa ile scroll etmesini veya sayfanın zeminin de çakılı kalmasını sağlar.

Yapısı : background-attachment: <deger>
Aldığı Değerler : scroll | fixed
Başlangıç değeri: scroll
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

Örnek:

body { 
    background: white url(deneme.gif);
    background-attachment: fixed; 
}

Tarayıcı Uyumu Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

background-position

background-position özelliği background-image ile belirlenen resmin başlangıç noktasını belirler. Bu özellik sadeceblock-level ve replaced(Bu elementler kendine özgü boyutları olan elementler olarak tanımlanabilir. Örn: IMGINPUT,TEXTAREASELECT, ve OBJECT) elementlere uygulanır.

Yapısı : background-position: <deger>
Aldığı Değerler : [ | ]{1,2} | [top | center | bottom] || [left | center | right]
Başlangıç değeri: 0% 0%
Uygulanabilen elementler: Block-level ve replaced elementler
Kalıtsallık: Yok

En kolay kullanım şekli;
Yatay değerler için: left,center,right
Dikey değerler için: top, center, bottom

Yüzde değerleri ve uzunluk değerleri de kullanılır. Yüzde değerleri elemtin boyuta bağlı olarak görecelidir. Uzunluk değerleri de kullanılabilir. Ancak farklı ekran çözünürlklerinde farklı görüntülere sebebiyet vermesi nedeni ile pek önerilmez.

Yüzde değerler ve uzunluk değerleri verildiğinde ilk değer yatay içindir sonra gelen dikey değerdir. Örneğin %10 %60 değeri bir zemin resmi için verilmiş ise %10 değeri yataydaki değeri %60 ise dikey olarak değerini gösterir. 5px 10px gibi değerler verilmişse resmin sol üstden 5px sağa ve 10px aşağıdan başlayacağını belirler.

Eğer yanlızca yatay değer verilmiş ise, dikey değer %50 olarak kabul edilecektir. Yüzde değerler ve uzunluk değerleri eksi değerler alabilir. Örn -2px %10 gibi. Aşağıdaki örnekler genel kullanım için yararlıdır:

  • top left = left top = 0% 0%
  • top = top center = center top = 50% 0%
  • right top = top right = 100% 0%
  • left = left center = center left = 0% 50%
  • center = center center = 50% 50%
  • right = right center = center right = 100% 50%
  • bottom left = left bottom = 0% 100%
  • bottom = bottom center = center bottom = 50% 100%
  • bottom right = right bottom = 100% 100%

Örnek:

body { 
    background-image: url(deneme.gif);
    background-repeat: no-repeat; 
    background-position: center; 
}

Tarayıcı Uyumu Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

background

Bu özellik Zemin(background) ile ilgili tüm özelliklerin bir arada kullanımı sağlar.

Yapısı : background: <deger>
Aldığı Değerler : <background-color><background-color> || <background-image> || <background-repeat> || <background-attachment> || <background-position>
Başlangıç değeri: Tanımsız
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

Örnek:

body{ 
    background: white url(deneme.gif) 
}

blockquote { 
    background: #f00 
}

p { 
    background: url(../images/deneme.png) #f00 fixed 
}

table{ 
    background: #0c0 url(deneme.jpg) no-repeat bottom right 
}

Tarayıcı Uyumu
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Liste Özellikleri

Liste özelliği ilk olarak listeleme amaçlı kullanılsa da şimdilerde menü yapımında kullanımı revaçtadır. Burada liste özellikleri yanısıra display ve white-space özelliklerinden de bahsedilecektir.

  • list-style
  • list-style-type
  • list-style-image
  • list-style-position
  • white-space
  • display

list-style-type

Yapısı : list-style-type: <deger>
Aldığı Değerler : disc | circle | square | decimal | lower-roman | upper-roman | lower-alpha | upper-alpha | none
Başlangıç değeri: disc Uygulanabilen elementler: display değeri list-item alan elementler
Kalıtsallık: Var

list-style-type özelliği list-item işaretinin tipini belirler. list-style-images özelliği none değeri aldığında veya resim görüntülenemediğinde kullanılır.

ul.arabalar { 
    list-style-type: none 
}

ol ol ol { 
    list-style-type: lower-roman /* i ii iii iv v gibi. */ 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

list-style-image

Yapısı : list-style-image: <deger\>
**Aldığı Değerler :** <url> | none
Başlangıç değeri: none
Uygulanabilen elementler: display değeri list-item alan elementler
Kalıtsallık: Var

list-style-image özelliği list-style işaretinin yerine resim koymak için kullanılır.

ul{ 
    list-style-image: url(mavitop.gif) 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

list-style-position

Yapısı : list-style-position: <deger>
Aldığı Değerler : inside | outside
Başlangıç değeri: outside
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

list-style-position özelliği list-item işaretlerin metinin içinden(inside) veya soldan dışında(outside) mı olacağını belirler.

ul{ 
    list-style-position: inside 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

list-style

Yapısı : list-style: <deger\>
**Aldığı Değerler :** <list-style-type\>|<list-style-position\> | <url>
Başlangıç değeri:0
Uygulanabilen elementler: display değeri list-item alan elementler
Kalıtsallık: Var

list-style özelliği list-style-type, list-style-position ve list-style-image özelliklerinin kısayoludur.

ul{ 
    list-style: disc outside 
}

ol{ 
    list-style: decimal inside 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

white-space

Yapısı : white-space: <deger>
Aldığı Değerler : normal | pre | nowrap
Başlangıç değeri: normal
Uygulanabilen elementler: Block-level elementler
Kalıtsallık: Var

white-spaceözelliği elemetlerin boşluklarının nasıl işlem göreceğini belirler. değer alır. normal: birden fazla boşluğu tek boşluk gibi sayar. pre : birden fazla boşluğu birleştirmez. nowrap :
etiketi hariç alt satıra geçişe izin vermez.

p { 
    white-space: pre; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

display

Yapısı : display: <deger>
Aldığı Değerler : none | inline | block | inline-block | list-item | run-in | table | inline-table | table-row-group | table-header-group | table-footer-group | table-row | table-column-group | table-column | table-cell | table-caption | inherit
Başlangıç değeri: inline
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

displayözelliği elemetlere aşağıdaki dört değerden birini atamak için kullanılır: block: elementden önce ve sonra bir satır bırakır. inline : elementden önce ve sonra bir satır bırakmaz. nowrap : block gibidir tek fark list-item işareti eklemesidir.
none: element görüntülenmez. Elementi gizler. Bir çok javascript uygulmasında kullanılan bir özelliktir.

Bu dört özellik çok kullanıldıkları için üzerinde duruldu.

p { 
    display: inline; 
}

em { 
    display: block;
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Tablo Özellikleri

Daha önce “CSS ile Tabloları şekillendirmek” adlı makalemizde tablo yapılarını gördük ve görünümünü daha güzel nasıl yaparız onun üzerinde durmuştuk. W3C bu durumu göz önünde bulundurarak tablo ve tablo elementlerinin görünümünü düzenlemek için tablo özellikleri ekledi. Tablolar diğer HTML elementlerinden daha farklı kendine has elementlerdir ve farklı özellikleri vardır. Burada CSS2 ile birlikte gelen yeni özellikleri inceleyeceğiz.

CSS2 ile birlikte gelen bu özelliklerden birçoğumuzun haberi olmayabilir. Ancak bizlere yardımcı olacak bu özelliklere göz atmak güzel. Bu özellikleri uygulamamızda en önemli etken tabiki IE’nin bu özelliklerin bir kısmını desteklememesidir. Bu tabiki IE’ye puan kaybettiriyor ve Microsoft’da bunun farkına geçte olsa vardığı söyleniyor ve IE8 ile birlikte tam CSS desteğini bizlere sunacakmış, tabi o zamana kadar Firefox IE’yi silip süpürmezse 😀

table-layout

Yapısı : table-layout: <deger>
Aldığı Değerler : auto | fixed | kalıtsallık
Başlnagıç değeri: auto
Uygulanabilen elementler: display: table ve display:inline-table olarak belirlenen elementlere
Kalıtsallık: Var

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Normalde tablolar içeriğindeki bilgiye göre genişliğini arttırır. Bu bize bir esnek kazandırır ancak bazen tablo genişliğimizin sabit kalmasını isteriz. table-layout:fixed değeri tablo genişliğimizi sabitlememizi sağlar. table-layout:auto ise tablo genişliğini içeriğe göre arttırır.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>table-layout örneği</title>
<style> 
table.otomatik {table-layout: auto; width: 350px; border-collapse: collapse;} 
table.sabit {table-layout: fixed; width: 350px; border-collapse: collapse;} 
td, th {border: 1px solid;} 
</style>
</head>
<body>
<table cellpadding="0" cellspacing="0" class="otomatik">
  <caption>
  Limitli ADSL Fiyatları
  </caption>
  <tr>
    <th>Hızı*(Kbps) </th>
    <th>Kota(GB) </th>
    <th>Bağlantı Ücreti** </th>
    <th>Aylık Ücret </th>
    <th>Limitin Üzerindeki Her MB için Ücret*** </th>
  </tr>
  <tr>
    <td>1024/256'e kadar</td>
    <td>4</td>
    <td rowspan="3">29 YTL</td>
    <td>29 YTL</td>
    <td>0,010 YTL</td>
  </tr>
  <tr>
    <td>1024/256'e kadar</td>
    <td>6</td>
    <td>39 YTL</td>
    <td>0,009 YTL</td>
  </tr>
  <tr>
    <td>2048/512'e kadar</td>
    <td>6</td>
    <td>49YTL</td>
    <td>0,009 YTL</td>
  </tr>
</table>
&nbsp;
<table cellpadding="0" cellspacing="0" class="sabit">
  <caption>
  Limitli ADSL Fiyatları
  </caption>
  <tr>
    <th>Hızı*(Kbps) </th>
    <th>Kota(GB) </th>
    <th>Bağlantı Ücreti** </th>
    <th>Aylık Ücret </th>
    <th>Limitin Üzerindeki Her MB için Ücret*** </th>
  </tr>
  <tr>
    <td>1024/256'e kadar</td>
    <td>4</td>
    <td rowspan="3">29 YTL</td>
    <td>29 YTL</td>
    <td>0,010 YTL</td>
  </tr>
  <tr>
    <td>1024/256'e kadar</td>
    <td>6</td>
    <td>39 YTL</td>
    <td>0,009 YTL</td>
  </tr>
  <tr>
    <td>2048/512'e kadar</td>
    <td>6</td>
    <td>49YTL</td>
    <td>0,009 YTL</td>
  </tr>
</table>
</body>
</html>

caption-side örneği

Örneği görmek içintıklayınız.

caption-side

Yapısı :caption-side:
Aldığı Değerler :top | bottom | inherit
Başlnagıç değeri:top
Uygulanabilen elementler:display: table-caption olarak belirlenen elementlere
Kalıtsallık:Yok

Not: CSS2 ile birlikte left ve right değerleride vardı ancak kullanışsızlığı nedeni ile CSS2.1’de kaldırıldı.

caption-side:Tablonun başlığının() nerede(altta mı üstte mi) olacağını belirler.

caption-side örneği

Örneği görmek içintıklayınız.

Bu özelliği IE(ie5+/mac destekliyor) desteklemiyor. Tüm tarayıcıların desteklediği şekilde kod yazmak için etiketininalignözelliği kullanılmalıdır. Örnek:

<caption align="bottom">
<caption align="top">

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border-collapse

Yapısı :border-collapse:
Aldığı Değerler :collapse | separate | kalıtsallık
Başlangıç değeri:separate
Uygulanabilen elementler:display:table ve display:table-caption olarak belirlenen elementlere
Kalıtsallık:Var

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border-collapse, tablo hücrelerinin etrafındaki kenarlık ile olan mesafeyi azaltmamızı veya açmamızı sağlar.separateataması yapılmış ise hücreler arasına bir kaç piksellik mesafe konur, HTML içinden bu boşlukları <table> etiketinin cellspacing özelliği ile kaldırmak istesek bile tarayıcılar bu seferde iki kenarlığı bir bir üstü gösterecektir. Eğercollapsedeğeri verilirse iki hücre arasındaki mesafe kalkacaktır ve tek kenarlık görünecektir.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>border-collapse örneği</title>
<style>
table.ayri { border-collapse: separate; }
table.birlesik { border-collapse: collapse; }
td { border: 1px solid black; padding: 3px; }
</style>
</head>
<body>
<table cellspacing="0" class="ayri">
  <tr>
    <td>hücre1</td>
    <td>hücre2</td>
  </tr>
  <tr>
    <td>hücre3</td>
    <td>hücre4</td>
  </tr>
</table>
&nbsp;
<table border="0" cellspacing="0" class="birlesik">
  <tr>
    <td>hücre1</td>
    <td>hücre2</td>
  </tr>
  <tr>
    <td>hücre3</td>
    <td>hücre4</td>
  </tr>
</table>
</body>
</html>

Örneği görmek içintıklayınız.

border-collapse örneği

border-spacing

Yapısı :border-spacing:
Aldığı Değerler : ? | inherit
Başlangıç değeri:0
Uygulanabilen elementler:display:table ve display:table-caption olarak belirlenen elementlere
Kalıtsallık:Var

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border-spacing, normal uzunluk değerleri alır veborder-collapse:separateile birlikte kullanılır. Eğer tek değer verilirse bu tüm kenarlar için geçerlidir, iki değer atanırsa ilki yatayda boşluk için ikincisi dikey de boşluk vermek için tanımlanmıştır.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>border-spacing örneği</title>
<style>
table.ayri { border-collapse: separate; border-spacing: 3px 5px; }
table.birlesik { border-collapse: separate; }
td { border: 1px solid black; padding: 3px; }
</style>
</head>
<body>
<table cellspacing="0" class="ayri">
  <tr>
    <td>hücre1</td>
    <td>hücre2</td>
  </tr>
  <tr>
    <td>hücre3</td>
    <td>hücre4</td>
  </tr>
</table>
&nbsp;
<table border="0" cellspacing="0" class="birlesik">
  <tr>
    <td>hücre1</td>
    <td>hücre2</td>
  </tr>
  <tr>
    <td>hücre3</td>
    <td>hücre4</td>
  </tr>
</table>
</body>
</html>

Örneği görmek içintıklayınız.

border-spacing örneği

empty-cells

Yapısı :empty-cells:
Aldığı Değerler :show | hide | kalıtsallık
Başlangıç değeri:show
Uygulanabilen elementler:display:table-cellolarak belirlenen elementlere
Kalıtsallık:Var

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Bir tabloya bazı değerler atadığımızda(örneğin kenarlık değeri) boş olan hücreler bu değeri görmez, bu durumu düzeltmek için boş olan hücreler için boş karakter( ) koyarız genel.empty-cellsözelliği ile boş kalan hücrelere nasıl davranması gerektiğini bildirebiliriz. göster(show) değeri ile hücrenin içeriği olan hücreler ile aynı özellikleri almasını sağlayabiliriz. gizle(hide) değeri ile de hücrenin yokmuş gibi davranmasını sağlarız.

Bu özellik Internet Explorer tarafından desteklenmemektedir.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>empty-cells örneği</title>
<style>
table.goster { empty-cells:show }
table.gizle { empty-cells:hide }
td { border: 1px solid black; padding: 3px; }
</style>
</head>
<body>
<table cellspacing="0" class="goster">
  <tr>
    <td></td>
    <td>hücre2</td>
  </tr>
  <tr>
    <td>hücre3</td>
    <td>hücre4</td>
  </tr>
</table>
&nbsp;
<table border="0" cellspacing="0" class="gizle">
  <tr>
    <td></td>
    <td>hücre2</td>
  </tr>
  <tr>
    <td>hücre3</td>
    <td>hücre4</td>
  </tr>
</table>
</body>
</html>

Örneği görmek içintıklayınız.

empty-cells örneği

Float,Clear ve Display Özelliği

CSS ile sayfa planlamak için kullanılan yöntemlerden bir tanesidir float ve clear özelliklerinin kullanımı. Float bir elementi Normal Akışın dışına çıkarmak için kullanılan bir yöntemdir. Bir biri ardına sıralanmış elementlere float uygulandığında elementler eğer yeterli alan varsa yan yana dizilirler. Float Dinamik Göreceli Konumlandırma gibidir ve bu amaçla kullanılabilir.

Clear özelliği ile float uygulanmış element’den sonraki elementlere float etkisini durdurmamız mümkündür. Örneğin iki paragrafınız olsun ve bunlardan sadece ilkini float uygulanmış elementin yanına koymak istiyorsunuz, bu durumda ikinci paragrafa clear özelliği atadığınızda bu element float uygulanmış elementin altında konumlanacaktır.

float

Yapısı : float: <deger>
Aldığı Değerler :left | right | none | inherit
Başlangıç değeri: none
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Float ilk olarak resimleri konumlandırmak için kullanılmıştır. Resimlerin metinlere göre konumunu belirlemek için HTML 1.0 ile birlikte align özelliği kullanıldı. Böylelikle resimler metinlere göre sola veya sağa konumlandırması imkanı sağlanmış oldu. Bu kullanım float ile benzerdir. Resimleri konumlandırmak için kullanılan bu yöntem daha sonra CSS’in olaya el atması ile tüm elementler için kullanıla geldi. Ayrıca float özelliği çoklu kolon oluşturmak için de kullanılır.

img { 
    float:left; 
    margin:0 4px 4px 0; 
}

float:left ataması yapılan resim sola dayanacak ve metin bu resmin etrafını saracaktır.

<img src="resim.gif" width="150" height=150 alt="resim bilgisi" />
<p>... paragraf metni ... </p>

Bir elemente float uygulandığında, float uygulanan kutu kapsayıcı kutunun veya diğer float kutusunun dış kenarının sağına veya soluna kaydırılabilir. Float uygulanan kutu, dökümanın normal akışının dışına çıkacaktır. Dökümandaki normal kutular float elementi burda yokmuş gibi normal akışına devam edeceklerdir.

Aşağıdaki şekilde görüldüğü gibi başlangıçta normal akış içinde bulunan 1.kutu float:right özelliğ ile sağ tarafa kaymış ve normal akıştaki elementlerin akışı 1.kutu yokmuş gibi devam etmiştir.

Aşağıdaki şekilde float:left tanımlaması yapılarak 1.kutu kapsayıcı kutunun en soluna dayanmıştır. Diğer iki kutu ise normal akışına devam etmektedir.

p {
    float:left; 
    width:200px; 
    margin:0;
}
img {
    float:left; 
    margin:0 4px 4px 0;
}

Burada her iki elemente de float uygulanarak metnin resmi sarmasına son verilmiştir. Bu çoklu kolon oluşturma tekniğinin basit bir örneğidir. Float uygulanan her element satır boyunca yan yana dizilecektir.

Eğer kapsayıcı kutu genişliği her üçünün sığacağı kadar değil ise sondaki kutu kendiliğinden aşağı kayacaktır. Eğer kutular farklı yükseklikte ise yükseliği düşük olan kutudan sonra gelen kutu bunun altında devam edecektir. Bu durumu düzeltmek için clear özelliği kullanılır bunu aşığda göreceğiz.

clear

Yapısı : clear: <deger>
Aldığı Değerler :none | left | right | both
Başlangıç değeri: tanımsız
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Float ile sık sık kullanılan diğer özellik clear’dir. Float elementinin etkisinden kurtulmak için clear özelliğini kullanırız. Float uygulanmış kutu sonra gelen elementleri etkiler bu etkiden kurtulmak için clear özelliği kullanılır.

clear özelliğinin kullanımına örnek verecek olursak. Eğer float uygulanmış element’ten sonraki elementin içeriği float uygulanmış kutunun yüksekliğinden küçük ise bir sonraki element de bu float uygulamasından etkilenecektir. Biz bu etkiyi kaldırmak için clear özelliğini kullanırız. Clear özelliği üst kutu ile araya gerekli mesafeyi koyacaktır, bir bakıma üst kutu ile araya üst margin değeri ataması yapmaktır.

Kutu Modeli Özelliği

Kenarlık(border), içerik alanı ve padding etrafındaki bir veya daha fazla çizgiye denir.

  • boder-style
  • border-top-style, border-right-style, border-bottom-style, border-left-style
  • border-width
  • border-top-width, border-right-width, border-bottom-width, border-left-width
  • border-color
  • border-top-color, border-right-color, border-bottom-color, border-left-color
  • border

Sırasıyla incelersek:

border-style

Yapısı : border-style:
Aldığı Değerler : [ none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset ]{1,4} | inherit
Başlnagıç değeri:tanımlama yok
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

border-style özelliği kenarlık stilini belirlememizi sağlar.(Örn: dotted(noktalı), double(çift) vd.) 10 farklı değeri CSS desteklemektedir. Bu özellik kenarlığın görünmesi için tanımlanması gereklidir. Bir veya dört değer alabilir eğer dört değer alırsa sırasıyla üst, sağ, alt ve sol kenarlık stilini belirler. Eğer tek değeri varsa tüm kenarlık değeri ataması yapılmış demektir. Eğer iki veya üç değer ataması yapılmış ise margin’de gördüğümüz sıralama söz konusudur.

p.yeni { 
    border-style: solid; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border-top-style, border-right-style, border-bottom-style, border-left-style

Yapısı : border-[top,left,right,bottom]-style:
Aldığı Değerler : none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset | inherit
Başlangıç değeri: tanımlama yok
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

border-top-style, border-right-style, border-bottom-style, border-left-style border-style özelliğinin her kenara ayrı ayrı atamasını yapabilmek için kullanılır.

h1{ 
    border-style: solid; 
    border-left-style: none; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border-width

Yapısı : border-width: <deger\>
**Aldığı Değerler :** [ thin | medium | thick | <uzunluk değeri> ]{1,4} | inherit
Başlnagıç değeri: tanımlama yok
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

İlk olarak stili belirledikten sonra kenarlık kalınlığını belirlemek için border-width değeri kullanılır.

border-width yüzde değeri alamaz.

p {
    margin: 5px; 
    background-color: silver; 
    border-style: solid;
    border-width: 1px; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border-top-width, border-right-width, border-bottom-width, border-left-width

Yapısı : border-[top,left,right,bottom]-width: <deger\>
**Aldığı Değerler :** thin | medium | thick | <uzunluk değeri > | inherit
Başlnagıç değeri: tanımlama yok
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

border-top-width, border-right-width, border-bottom-width, border-left-width border-width özelliğinin her kenara ayrı ayrı atamasını yapabilmek için kullanılır.

h2 { 
    border-left-width: medium;
    border-style: solid; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border-color

Yapısı : border-color: <deger\>
**Aldığı Değerler :** [ <renk> | transparent ]{1,4} | inherit
Başlnagıç değeri: tanımlama yok
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

border-color özelliği kenarlık rengini belirler. (X)html’deki bordercolor ile benzerdir.

p { 
    border-style: solid; 
    border-color: gray;
}

Tek değer tüm kenarlık renklerini belirler, her kenar için ayrı renk tanımlamasıda yapılabilir.

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border-top-color, border-right-color, border-bottom-color, border-left-color

Yapısı : border-[top,left,right,bottom]-color: <deger\>
**Aldığı Değerler :** [ <renk> | transparent ]{1,4} | inherit
Başlnagıç değeri: tanımlama yok
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

border-colorözelliğinin her kenara ayrı ayrı atamasını yapabilmek için kullanılır.

Not: Bir kenarlığı yok etmek için kalınlık değeri veririz. Birde CSS2 ile birlikte gelen transparent özelliği vardır ki bu kenarlığı yok etmez sadece görünmez yapar.

p { 
    border-style: solid; 
    border-color: gray;
}

Tek değer tüm kenarlık renklerini belirler, her kenar için ayrı renk tanımlamasıda yapılabilir.

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

border

Yapısı : border: <deger>
Aldığı Değerler : <border-width\>| <border-style\>| <renk>
Başlnagıç değeri: tanımlama yok
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

borderyukarıda sıraladığımız özellikleri tek sefer de tanımlamak için kullanılır. Bir kısaltmadır.

h1 { 
    border: thick silver solid; 
}

Bu özellikleri tek tek atamak isteseydik şöyle bir kod yazmamız gerekecekti.

h1 { 
    border-top: thick silver solid;
    border-bottom: thick silver solid; 
    border-right: thick silver solid;
    border-left: thick silver solid; 
}

 

 

Margin özelliği elementin etrafındaki boşluk olarak tanımlanır. Negatifdeğer alabilir. Tek tek özellikler(margin-top,margin-left vd.) atanabildiğigibi tek bir özellikle(margin) de tanımlama yapılabilir. Margin özelliklerinianlamak için lütfen Box modellerine bir göz atın.

Kutu Modeli

  • margin-top
  • margin-right
  • margin-bottom
  • margin-left
  • margin

margin-top

Yapısı : margin-top: <deger>
Aldığı Değerler : | <yüzde>| auto
Başlnagıç değeri: 0
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

margin-top özelliği elementin üst kenar boşluğunu bellibir değer kadar veya yüzde olarak belirler.Negatif değer alabilir.

body { 
    margin-top: 0 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

margin-right

Yapısı : margin-right: <deger>
Aldığı Değerler : | <yüzde>| auto
Başlnagıç değeri: 0
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

margin-right özelliği elementin sağ kenar boşluğunu bellibir değer kadar veya yüzde olarak belirler.Negatif değer alabilir.

p.diger { 
    margin-right: 50% 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

margin-bottom

Yapısı : margin-bottom: <deger>
Aldığı Değerler : | <yüzde>| auto
Başlnagıç değeri: 0
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

margin-bottom özelliği elementin alt kenar boşluğunu bellibir değer kadar veya yüzde olarak belirler.Negatif değer alabilir.

p { 
    margin-bottom: 10px 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

margin-left

Yapısı : margin-left: <deger>
Aldığı Değerler : | <yüzde>| auto
Başlnagıç değeri: 0
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

margin-left özelliği elementin sol kenar boşluğunu bellibir değer kadar veya yüzde olarak belirler.Negatif değer alabilir.

p { 
    margin-left: 10px 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

margin

Yapısı : margin: <deger>
Aldığı Değerler : [ | |auto]{1,4}
Başlnagıç değeri: Tanımsız
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

margin özelliği yukardaki özelliklerin tek bir özellikle uygulanması içinkullanılır.

h1 { 
    margin: 0.25in; 
    background-color: silver; 
}

h1 { 
    margin: 10px 20px 15px 5px; 
}

yukarıda h1 için margin değerleri sıralaması şöyledir:

margin: üst sağ alt sol(saat yönünde)

ikili ve üçlü kullanımda mevcuttur

h1 {
    margin: 0.25em 0 0.5em;
} /* esittir '0.25em 0 0.5em 0' */

h2 {
    margin: 0.15em 0.2em;
} /* esittir '0.15em 0.2em 0.15em 0.2em' */

p {
    margin: 0.5em 10px;
} /* esittir '0.5em 10px 0.5em 10px' */

p.close {
    margin: 0.1em;
} /* esittir '0.1em 0.1em 0.1em 0.1em' */

Padding içerik alanı ile kenarlık arasındaki alandır.

Kutu Modeli

padding-top

Yapısı : padding-top: <deger>
Aldığı Değerler : | <yüzde>| inherit
Başlnagıç değeri: 0
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

padding-top özelliği içerik alanı ile üst kenarlık arasındakimesafeyi belirler.

h2 { 
    padding-left: 0.25in; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

padding-right

Yapısı : padding-right: <deger>
Aldığı Değerler : | <yüzde>| inherit
Başlangıç değeri: 0
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

padding-right özelliği içerik alanı ile sağ kenarlık arasındakimesafeyi belirler.

h2 { 
    padding-right: 0.25in; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

padding-bottom

Yapısı : padding-bottom: <deger>
Aldığı Değerler : | <yüzde>| inherit
Başlnagıç değeri: 0
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

padding-bottom özelliği içerik alanı ile alt kenarlık arasındakimesafeyi belirler.

h2 {
    padding-bottom: 0.25in; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

padding-left

Yapısı : padding-left: <deger>
Aldığı Değerler : | <yüzde>| inherit
Başlnagıç değeri: 0
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

padding-left özelliği içerik alanı ile sol kenarlık arasındakimesafeyi belirler.

h2 { 
    padding-left: 0.25in; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

padding

Yapısı : padding: <deger>
Aldığı Değerler : | <yüzde>| inherit
Başlnagıç değeri: 0
Uygulanabilen elementler: Block-level ve replaced elementler
Kalıtsallık: Yok

paddingözelliği padding-top, padding-right, padding-bottomve padding-left değerlerini kısayoldan atamak için kullanılır.

h1 { 
    padding: 10px; 
    background-color: silver; 
}

margin’deki gibi farklı kullanım şekilleri mevcuttur.

Kutu modeli özelliklerine devam ediyoruz. Sırasıyla aşağıdaki özellikleri inceleyeceğiz:

  • Width
  • Height
  • Float
  • Clear

Kutu Modeli

width

Yapısı : width: <deger>
Aldığı Değerler : | <yüzde>| auto | inherit
Başlnagıç değeri: auto
Uygulanabilen elementler: Block-level ve replaced elementler
Kalıtsallık: Yok

Blok-level ve replaced elementlerin(örn: img, input, textarea vd.) tümü bir genişlik(width) değeri alır. Elementlerin başlangıçtaki genişlik değeri auto yani kendi asıl genişliğidir. (Örneğin bir resmin genişliği gibi) Yüzde değeri ebveyn elementi kıstas alarak uygulanır. Negatif değeri almaz.

p { 
    width: 200px; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

height

Yapısı : height: <deger>
Aldığı Değerler : | auto | inherit
Başlangıç değeri: auto
Uygulanabilen elementler: Block-level ve replaced elementler
Kalıtsallık: Yok

Blok-level ve replaced elementlerin(örn: img, input, textarea vd.) tümü bir yükseklik(height) değeri alır. Elementlerin başlangıçtaki yükseklik değeri auto yani kendi asıl yüksekliğidir. (Örneğin bir resmin yüksekliği gibi) Negatif değeri almaz.

h2 { 
    height: 0.25in; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

float

Yapısı : float: <deger>
Aldığı Değerler : left | right | none |inherit
Başlnagıç değeri: none
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Yok

float özelliği bir elementi(img, table, div vd.) konumuNu belirlemek(sağa veya sola ) için kullanılır. Siz bir elementeflaot=left değeri verirseniz diğer elementler o elementin sağından akar. Bu HTML3,2 deki resime(img) uygulananalign=”left” ve align=”right” ile özdeş bir özelliktir. Ancak CSS 1 tüm elementlere float özelliği vermemizi sağlıyor. HTML 3,2 sadece img ve table için bu özelliği kullanmamıza izin veriyordu. float özelliği sonraki derslerde daha ayrıntılı gösterilecektir. float özelliği CSS ile tablosuz web sitesi oluşturma metodunun en önemli öğelerinden biridir.

p img { 
    float: left;
    margin: 25px; 
}


Bu aralar CSS kitabına(e-kitap) ağırlık verdim. Kitaptaki eksik bölümleri tamamlıyorum. İnşallah en yakın zamanda bitecek. Bu konuda onlardan biri.

Kutu elementlerin görünümüne çeşitli etkiler yapan özellikleri göreceğiz bu makalede çoğu CSS2 ile birlikte gelen bu özellikler aşağıda sıralanmıştır.

  • overflow – taşma
  • clip – kırpma
  • visibility – görünürlük

Overflow

Yapısı: overflow: <deger>
Aldığı Değerler: visible | hidden | scroll | auto | inherit
Başlnagıç değeri: visible
Uygulanabilen elementler: blok-level elementler ve replacement elementlere
Kalıtsallık: Yok

Türkçeye taşmak(overflow) olarak çevirdiğimiz bu özellik sınırlarını belirlediğimiz kutu elementinin içeriğinin sınırları aşması durumunda nasıl davranacağını bildiren bir özelliktir. Özelliğe atanan değerleri tek tek incelersek.

  • inherit – kalıtsallık üst elementin değerini alabilir
  • visible – kutu sınırları dışına taşan alanları göster
  • hidden – kutu sınırları dışına taşan alanları gizle.
  • scroll – kutu sınırlarını taşan kısmı kaydırma çubuğu ile ulaşmamızı sağlar.
  • auto – kutu sınırlarını aşması durumunda scroll ile aynı etkiyi yapar.

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

overflow:visible Overflow’ın başlangıç değeri visible’dır. Bu değer taşma olan kısımların gösterilmesini sağlar.

div#solMenu {
    position: absolute;
    top: 0;
    left: 0; 
    width: 200px;
    height: 120px;
    background: #BBB;
    overflow: visible;
}

overflow

Kodun yeni nesil tarayıcılardaki görünümü

overflow özelliğinin değeri visible olduğu için içerik taşmasına rağmen taşan bölümler gösterilmiştir.

overflow:scroll Eğer içeriğin taşmasını engellemek istiyorsak ama yinede taşan kısımlara ulaşılması için kaydırma çubuğu çıkması için scroll özelliği ekleriz.

div#solMenu {
    position: absolute;
    top: 0;
    left: 0;
    width: 200px;
    height: 120px;
    background: #BBB;
    overflow: scroll;
}

overflow scroll

overflow:scrool olma durumu

overflow:hidden Eğer overflow:hidden değeri atarsak. Sınırladığımız kutunun dışına taşan kısımlar gösterilmeyecektir.

div#solMenu {
    position: absolute;
    top: 0;
    left: 0;
    width: 200px;
    height: 120px;
    background: #BBB;
    overflow: hidden;
}

kodu bu şekilde değiştirdiğimizde görüntü aşağıdaki gibi olacaktır.

overflow:hidden

overflow:auto Son olarakta otomatik değeri vardır. Bu değeri atayınca kutu içeriğine göre otomatik işlem yapacaktır. Eğer taşma olmuyorsa kaydırma çubuğu çıkmayacaktır. Ama eğer içerik taşıyorsa kaydırma çubuğu çıkacaktır.

div#solMenu {
    position: absolute;
    top: 0;
    left: 0;
    width: 200px;
    height: 120px;
    background: #BBB;
    overflow: hidden;
}

overflow:auto

Dikkat ederseniz scroll’dan farklı olarak sadece dikey kaydırma çubuğu çıkmıştır. Yatayda bir taşma olmadığı için yatay kaydırma çubuğu çıkmamıştır.

Örneği görüntülemek için tıklayınız.

Safari’nin eski sürümlerinde sorun çıkarıyor Javascript ile bir çözüm var. http://blog.deconcept.com/2005/03/25/safari-and-links-to-elements-in-overflow-auto-content

Operadaki sorun için ise sadece min-height ve min-width özelliklerini kullanmak yeterli.http://nontroppo.org/test/Op7/overflowbug.html

Bunların dışında Internet Explorer’ün tescillediği ve CSS3 standartlarında yer alan iki adet özellik daha vardır. overflow-x ve overflow-y

overflow-x ve overflow-y: Internet Explorer5x ve üzeri sürümlerden itibaren desteklediği bu özellikler aslında overflow gibi çalışır. Buradaki x ve y’dende anlaşıldığı gibi overflow özelliğini yatay ve dikey olarak ikiye ayıran özelliklerdir. overflow-x özelliği yatayda taşma olması durumunda taşan kısımlara uygulanacak özellikleri(visible, scroll, hidden ve auto) atmamızı sağlar. overflow-y’de dikeyde aynı şeyi yapar. Firefox’unda 1.1 versiyonundan itibaren bu özellikleri desteklemesi kullanılabilirliğini arttırmıştır. Tabi biraz daha beklemekte yarar var.

Örnekler için tıklayınız. (brunildo.org’dan)

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

clip

Yapısı : clip: rect(<üst>,<sağ>,<alt>,<sol>)
Aldığı Değerler : rect(top, right, bottom, left) | auto | inherit
Başlangıç değeri: auto
Uygulanabilen elementler: mutlak konumlandır uygulanmış elementler (CSS2’den itibaren blok-level elementler ve replacement elementlere )
Kalıtsallık: Yok

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Not W3C standartları belirlerken konumlandırmalar arasında virgül konmasını öneriyor. Ancak garip bir şekilde IE virgül kullanılan örnekleri normal modda farklı yorumlamaktadır. Acayip modda ise doğru yorumlamaktadır. Ne yapalım bizde tüm tarayıcılara uygun olması için virgül kullanamayacağız

clip, elementin içeriğinin belli bir bölümünün gösterilmesi sağlar. Başlangıç değerinin auto atanmış olması herhangi bir kırpmanın olmayacağını gösterir.

Resim düzenleme araçlarında yaptığımız kırpma işini CSS yardımıyla yapmamızı sağlayan bu özelliği Javascript ile birlikte kullanarak çok güzel uygulamalar yapabiliriz.

Clip’e atanan değerler em cinsinden verilerek esnek sonuçlar elde edilebilir. Ayrıca negatif değerlerde alabilir. Negatif değer atandığında element kutusunun dışına doğru kırpma yapacaktır.

kırpma

Bir örnek yapalım.

CSS kodu:

.kirpma{
    position:absolute;
    clip:rect(50px 130px 153px 40px);
}

HTML kodu:

<div class="kirpma">
<img src="recepemice.jpg" alt="ahmet emice" />
</div>

Kırpma

örneğin görüntüsü

Örneği görmek için tıklayınız.

visibility

Yapısı : visibility:
Aldığı Değerler : visible | hidden | collapse | inherit
Başlnagıç değeri: visible
Uygulanabilen elementler: tüm elementlere
Kalıtsallık: Yok

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Görünürlük(visibility) özelliği nesnelerin görünümünü belirler. Değeri visible ise element görünür. Eğer değeri hidden ise element görünmezdir. Eğer bir elementin görünürlük değeri hidden olarak atanmış ise element sayfa yapısındaki yeri korur ancak gözle görülmez.

<html>
<head>
<title>visibility Örneği</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
  <li class="alternatifard">body {font-family: sans-serif; font-weight: bold; font-size: 14px}</li>
</style>
  <li class="alternatifard"></head>
<body>
<h1 style="visibility: visible">Görünür Başlık</h1>
<h1 style="visibility: hidden; background-color:#f00; border:1px solid #000; margin:20px 0; padding-top:10px;">Görünmez Başlık</h1>
<h1 style="visibility: visible">Görünür Başlık</h1>
<p style="font-size: large">Görünür metin parçası<b style="visibility: hidden">görünmez metin parçası</b> ve burası görünüyor.</p>
</body>
</html>

Visibility örneği

Örneği görmek için tıklayınız.

Örnekte gördüğümüz gibi element görünmediği halde sayfadaki yerini korumaktadır. Ayrıca gizli nesneye atanan kenarlık ve zemin rengide görünmemektedir. Ancak elementin konumu etkileyen kenar boşluğu(magrin) ve padding değeri görünmese de sayfayı etkilemektedir.

Ata elementi görünmez olan bir çocuk elemente eğer görünür özelliği atanmış ise ata element görünmez ancak çocuk element görünür. Bu ters bir durum olarak görünür ancak bu bize avantaj sağladığı durumlarda yok değildir. Örnek yaparsak

CSS kodu

p.gorunmez {
    visibility: hidden;
}

p.gorunmez strong {
    visibility: visible;
}

HTML kodu

<p class="gorunmez" <strong>Lorem ipsum dolor sit amet</strong>, consectetuer adipiscing elit. Cras sem. In sagittis mauris eu turpis. Mauris ut lorem nec pede consequat suscipit. </p>

visibility hiyerarşi

Örneği görmek için tıklayınız.

visiblity:collapse özelliği vardır. collapse tablo elementler için hidden etkisi yapar. Ancak burada bir fark var gizlene elementler yerini korumaz. Ayrıca bu özelliği tüm tarayıcılar desteklemiyor, bunun yerine display:none özelliği kullanılır.

Font ve Metin Text Özellikleri

Font özellikleri sayfalarımızdaki metinlerin font ailesini, kalınlık ayarlarını,boyutunu, büyük-küçük harf olmasını ve stilini değiştirmemizi sağlar. CSS fontlar üzerinde tam hakimolmamızı sağlar.

  • color
  • font-family
  • font-size
  • font-weight
  • font-style
  • font-variant
  • font

color

Yapısı : color: <deger\>**Aldığı Değerler :**<renk> | inherit Başlangıç değeri:web tarayıcısı belirler Uygulanabilen elementler:tüm elementler Kalıtsallık: Var

(color) metinlerimizin rengini tanımlamamız için kullanılır.

 p{ 
    color:#f00; /* kırmızı renk kodu */ 
}

Renk kullanımına daha önce değinmiştik. Detay için tıklayınız.

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

font-family

Yapısı : font-family : [[<font aile ismi > | <soysal aile ismi >],]* [<font aile ismi > | <soysal aile ismi >] | inherit
Aldığı Değerler : <font aile ismi > | <soysal aile ismi >
Başlangıç değeri:web tarayıcısı belirler
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Var

soysal yazıtipi aile isimleri

  • serif (örn: Times)
  • sans-serif (örn: Arial or Helvetica)
  • cursive (örn: Zapf-Chancery)
  • fantasy (örn: Western)
  • monospace (örn: Courier)

Metinlerin kullanılacağı font ailesini belirlemek için kullanılır. Birden fazla fontailesi kullanılacaksa aralarına virgül (,) konur. Genelde son font ailesiolarak soysal font ailesi yazılır. Örnek:

p { 
    font-family: Verdana, Arial, Helvetica, sans-serif; 
}

Eğer font ismi bir den fazla kelimeden olşuyorsa çift tırnak içine alınır.Örn:

h1 { 
    font-family: Georgia, "Times New Roman", serif; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

font-size

Yapısı :font-size: | <göreceli değerler=”” \=””>| <uzunluk> | <yüzde>
Aldığı Değerler : – <kesin değerler > | <göreceli değerler >
Başlangıç değeri:medium
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Var

kesirli değerler

  • xx-small
  • x-small
  • small
  • medium
  • large
  • x-large
  • xx-large

CSS, Font boyutlandırmaya daha esnek tanımlama yapmamızı olanak sağladı. Mesela 11px değeri HTML’de2 ve 3 değeri arasında bir değer denk geliyor ve HTML font elementi ile birlikte kullanılamıyordu.CSS’de font boyutunu belirlemek için bir çok birim kullanılır. Örn: px, em,pt, in, cm vd.

td { 
    font-size :12px; 
}

td { 
    font-size : 150%; 
}

td { 
    font-size : xx-small; 
}

td { 
    font-size : x-large; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

font-weight

Yapısı :font-weight: <değer>
Aldığı Değerler :normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900
Başlangıç değeri:normal
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Var

Fontun kalınlık incelik durumunu belirler. 100(ince)-900(kalın)arasında bir değer alabildiği gibi bold, bolder ve normal değerlerini de alır.

p{ 
    font-weight: bolder; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

font-style

Yapısı :font-style: <değer>
Aldığı Değerler : normal | italic | oblique | inherit
Başlangıç değeri:normal
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Var

Fontun eğik(italiktik) olup olamamasını belirler.

p { 
    font-style: italic; 
}

h4{ 
    font-style: oblique; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

font-variant

Yapısı :font-variant: <değer>
Aldığı Değerler :normal | small-caps | inherit
Başlangıç değeri:normal
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Var

Metnin küçü-büyük harf ile gösterilmesini belirler. İki değer alır. normal | small-caps.

span { 
    font-variant: small-caps; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser

Türkçe karakterlerde sorun çıkardığı unutulmamalı

font

Yukardı anlatılan font özelliklerinin hatta ek olrak line-height değerinide tek sefer de tanımlamak için kullanılır. Birkısaltmadır.

Yapısı :font: <değer>
Aldığı Değerler :[ <font-style> || <font-variant> || <font-weight> ]? <font-size> [ / <line-height> ]? <font-family>
Başlangıç değeri:tanımsız
Uygulanabilen elementler: tüm elementler
Kalıtsallık: Var

h2 { 
    font: bold italic 200%/1.2 Verdana, Helvetica, Arial, sans-serif; 
}

Tarayıcı Uyumu 
Firefox
Chrome
Safari
Opera
İnternet Explorer
Mobil Tarayıcılar
iOS Safari
Opera Mobile
Android Browser