İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

CSS ile Yatay ve Dikey Menüler Yapmak

yagmayok

1
İyinet Üyesi
Katılım
25 Ocak 2005
Mesajlar
7,131
Reaction score
89
Websitelerinin vazgeçilmezleri arasındadır menüler. CSS ile menü yapmak ise bir başka güzeldir. Ayrıca oldukça kolaydır.

Sonradan sitenizdeki menüyü değiştirmeniz gerektiğinde sadece style dosyasında yapacağınız değişiklikler ile de bunu kolayca yapabilirsiniz.

Bu yazımızda CSS ile yatay menüleri nasıl yapabileceğimize dair basit bir örnekvereceğiz.

Öncelikle menümüzü <ul> ve <li> içine alalım ve bakalım nasıl gözükecek.

HTML:
<ul class="menu">
	<li><a>Ana Sayfa</a></li>
	<li><a>İletişim</a></li>
	<li><a>Reklam</a></li>
</ul>

Ekran Görüntüsü:
71127019.gif


Şimdi de görüntü kirliliği olmasın diye yazılarımızın yanında alan nokta şeklindeki işaretleri kaldıralım.
HTML:
ul.menu {
    list-style-type: none;
}
Ekran Görüntüsü:
51451288.gif


Birçok tarayıcı da bu kodlar yorumlanırken margin ve padding değerlerini 0 olarak algılama ve boşluklar bırakır. Bunları margin:0; ve padding:0; ekleyerek sıfırlayalım.
HTML:
ul.menu {
    list-style-type: none;
    margin:0;
    padding:0;
}
Ekran Görüntüsü:
51451288.gif


Buraya kadarki işlemler dikey ve yatay menüler için geçerlidir.

Şimdi linkleri yatay olarak listelemek için diplay:inline kodunu kullanacağız.
HTML:
ul.menu {
    list-style-type: none;
	padding:0;
	margin:0;
}
ul.menu li {
    display: inline;
}
Ekran Görüntüsü:
87536712.gif


Şimdi de linklerin altında yer alan çizgileri text-decoration: none kodunu kullanarak sağlıyoruz.
HTML:
ul.menu {
    list-style-type: none;
	padding:0;
	margin:0;
}
ul.menu li {
    display: inline;
}
ul.menu li a {
    text-decoration: none;
}
Ekran Görüntüsü:
55538359.gif


Görüntünün daha güzel olması için linkler arasında biraz boşluk bırakalım. Bunuda padding özelliğini kullanarak yapalım.
HTML:
ul.menu {
    list-style-type: none;
	padding:0;
	margin:0;
}
ul.menu li {
    display: inline;
}
ul.menu li a {
    text-decoration: none;
	padding:10px;
}
Ekran Görüntüsü:
73422278.gif


Şimdi sıra renklendirmeye geldi. Background kodunu kullanarak arkaplan rengini mavi, color kodunuda kullanarak ise linklerin rengini beyaz yapıyoruz.
HTML:
ul.menu {
    list-style-type: none;
	padding:0;
	margin:0;
}
ul.menu li {
    display: inline;
}
ul.menu li a {
    text-decoration: none;
	padding:10px;
	color: #ffffff;
    background-color: #217DA5;
}
Ekran Görüntüsü:
33828209.gif


Şimdi kutuların üzerine geldiğimiz zaman rengin değişmesini sağlayarak görsellik katıyoruz. Bunu da a:hover özelliğini kullanarak kırmızı renk olarak gerçekleştiriyoruz.
HTML:
ul.menu {
    list-style-type: none;
	padding:0;
	margin:0;
}
ul.menu li {
    display: inline;
}
ul.menu li a {
    text-decoration: none;
	padding:10px;
	color: #ffffff;
    background-color: #217DA5;
}
ul.menu li a:hover
{
background-color: #FF2421;
}
Ekran Görüntüsü:
30556611.gif


Konuyu herkesin rahat anlayabilmsi için basit bir şekilde anlattım. İllerki anlatımlarımda daha farklı uygulamaları göstermeye çalışacağım.

Kaynak göstererek yayınlayabilirsiniz.
 

yagmayok

1
İyinet Üyesi
Katılım
25 Ocak 2005
Mesajlar
7,131
Reaction score
89
CSS İle Yatay Menüler Yapmak 1 konumuzda bu tarz menülerin nasıl yapılacağına dair örnek vermiştik. Şimdi de CSS ile Dikey menüleri nasıl yapabileceğimize değineceğiz.
HTML:
<ul class="menu">
	<li><a>Ana Sayfa</a></li>
	<li><a>İletişim</a></li>
	<li><a>Reklam</a></li>
</ul>
Ekran Görüntüsü:
71127019.gif


Şimdi de görüntü kirliliği olmasın diye yazılarımızın yanında alan nokta şeklindeki işaretleri kaldıralım.
HTML:
ul.menu {
    list-style-type: none;
}
Ekran Görüntüsü:
51451288.gif


Birçok tarayıcı da bu kodlar yorumlanırken margin ve padding değerlerini 0 olarak algılama ve boşluklar bırakır. Bunları margin:0; ve padding:0; ekleyerek sıfırlayalım.
HTML:
ul.menu {
    list-style-type: none;
    margin:0;
    padding:0;
}
Ekran Görüntüsü:
51451288.gif



Buraya kadarki işlemler dikey ve yatay menüler için geçerlidir.
her linke rollover özelliği kazandırmak için:
HTML:
ul.menu a {
    display: block;
}
Color ve Background özelliğini kullanarak menümüzü renklendiriyoruz.
HTML:
ul.menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
ul.menu a {
    display: block;
    color: #ffffff;
    background-color: #217DA5;
}
Ekran Görüntüsü:
35620585.gif


Menümüz için width değerini belirtmediğimizden dolayı isteğimiz dışında uzadı. Tasarımlarımıza entegre ederken bu uzunluğu width özelliğini kullanarak istedğimiz gibi ayarlayabiliriz. Şimdi bu uzunluğu ayarlıyoruz.
HTML:
ul.menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
ul.menu a {
    display: block;
    color: #ffffff;
    background-color: #217DA5;
    width:120px;
}
Ekran Görüntüsü:
33446090.gif


Yazılarımız çok birbirine çok bitişik olduğu için görüntümüz pek güzel olmadı. Biraz daha görsellik katmak için linkleri padding özelliği ile birbirinden biraz uzaklaştırıyoruz.
HTML:
ul.menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
ul.menu a {
    display: block;
    color: #ffffff;
    background-color: #217DA5;
	width:120px;
	padding:4px;
}
Ekran Görüntüsü:
56530276.gif


Not: Yukarıdaki padding özelliğinin farklı şekillerde kullanarak görselliği daha farklı şekilde geliştirebilirsiniz.

Şimdi kutuların üzerine geldiğimiz zaman rengin değişmesini sağlayarak görsellik katıyoruz. Bunu da a:hover özelliğini kullanarak kırmızı renk olarak gerçekleştiriyoruz.
HTML:
ul.menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
ul.menu a {
    display: block;
    color: #ffffff;
    background-color: #217DA5;
	width:120px;
	padding:4px;
}
ul.menu li a:hover
{
background-color: #FF2421;
}
Ekran Görüntüsü:
87510230.gif


Linklerin altındaki çizgileri text-decoration: none; ile kaldıralım ve örneğimizi sonlandıralım.
HTML:
ul.menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
ul.menu a {
    display: block;
    color: #ffffff;
    background-color: #217DA5;
	width:120px;
	padding:4px;
	text-decoration: none;
}
ul.menu li a:hover
{
background-color: #FF2421;
}
Ekran Görüntüsü:
93867202.gif
 

yagmayok

1
İyinet Üyesi
Katılım
25 Ocak 2005
Mesajlar
7,131
Reaction score
89
Teşekkür ederim Cagatay.
Amacım sadece yeni başlayanlar veya zorlananlar için örnek teşkil edebilecek basit uygulamalar vermek.
 

osahin

0
İyinet Üyesi
Katılım
8 Ekim 2006
Mesajlar
4,978
Reaction score
34
Konum
kalbinizden :p
yagmayok görmemiştim yazılarını, css konusu çok önemli ne kadar çok kişi css bilirse o kadar iyi artık, teşekkürler bunlar için.
 

anofen

0
İyinet Üyesi
Katılım
18 Ağustos 2009
Mesajlar
28
Reaction score
0
Konum
Gaziantep
eline sağlık hocam çok güzel bir anlatım olmuş, yavaş yavaş öğreniyorum işde yardımcı olacak böyle anlatım yapacak arkadaşlardan anlatım bekliyorum
selametle
 

EhoWuser

0
İyinet Üyesi
Katılım
19 Kasım 2009
Mesajlar
94
Reaction score
0
Konuyu hortlatayım. :) Açılır menülere de (dikey ya da yatay)örnekler ekleyecek arkadaş yok mu?
 

yagmayok

1
İyinet Üyesi
Katılım
25 Ocak 2005
Mesajlar
7,131
Reaction score
89
EhoWuser bu konuda bir örnek hazırladım, ekte mevcut. İndirerek inceleyebilirsiniz.

js dosyalarıyla oynarakta düzenlemeleri (renk gibi) yapabilirsiniz.
 

EhoWuser

0
İyinet Üyesi
Katılım
19 Kasım 2009
Mesajlar
94
Reaction score
0
yagmayok, mesaj için teşekkür ederim ama css ile menü yaparken bunun js yapılmamasından yanayım..Pure css ile yapılan menülerle ilgili örnekler arıyorum. Özcan arkadaşımızın verdiği sitede örnekler buldum fakat kodlanmaları berbattı işin açıkçası.İlgi ve bilgilendirme için tekrar teşekkür ederim.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst