En basit ve sorunsuz şekli ile açılır bir menü hazırlıyacağız. Sadece CSS ve HTML ile oluşturacağımız bu menünün en güzel tarafı tüm tarayıcılarda sorunsuz bir şekilde çalışacak olması. Hemde bunları yaparken hiç javascript kullanmayacağız :). Bir ay kadar önce internette bir örneğine rastlamıştım. Şirket içi Proje için basit bir menüye ihtiyacım olunca bu yöntem geldi aklıma.
Öncelikle menümüzün HTML kısmını hazırlayalım.
Menümüzde önemli nokta, iç içe geçmiş <ul> etikleri. Önce yatay bir menü hazırlıyoruz.
<ul id="menu"> <li><a href="#">Anasayfa</a></li> <li> <a href="#">Madde 1</a></li> <li> <a href="#">Madde 2</a></li> </ul>
Anasayfa’nın altında herhangi bir link olmayacağı için Madde 1 ile açılır menümüzü hazırlamaya baÅŸlıyoruz.
<li> etiketi altına bir tane
<ul> etiketi açıyoruz. Bu etiket içerisine açılacak menüyü yerleÅŸtireceÄŸiz. Åžimdi Madde 1′in altında açılacak olan menümüzün kodlarını yazalım.
<li> <a href="#">Madde 1</a> <ul> <li><a href="#">Madde 1-1</a></li> <li><a href="#">Madde 1-2</a></li> </ul> </li>
Peki bu menü nasıl açılacak? Bu açılma ve tekrar kapanma iÅŸlemlerini CSS ile yapacağız. ID’si “menu” olan ul etikenine ait li etiketlerinin içerisinde yer alan ul etiketlerinin varsayılan(default) display deÄŸerini “none” olarak belirliyoruz. Tek cümlede anlatınca biraz karışık olduÄŸunu biliyorum o yüzden bir çizim ile bunu anlatarak pekiÅŸtirelim.

Bu grafiğe ait olan CSS kodlarını yazalım. Yukarıdada belirttiğim gibi <li> içindeki etiketinin değerini atayacağız.
ul#menu li ul{
display:none;
border:solid 1px #ccd6e5;
padding:0px;
margin-left:-10px;
padding-bottom:5px;
}
Yukarıda stil olarak vermiÅŸ olduÄŸumuz kodları geçersek ilk sırada yer alan “display:none;” koldarı bizim iÅŸimizi gören kısım. Åžimdi en iÅŸlevsel kısıma geldik. Bu alt menümüz ne zaman açılacak. Genel olarak “<a” etiketlerinde kullanılan “hover” özelliÄŸini kullanacağız. Yani “li:hover” da altındaki “ul” etiketinin display özelliÄŸini “block” yapacaz.
Şimdi CSS kodlarını yazalım :
ul#menu li:hover ul{
display:block;
position:absolute;
width:150px;
background:#fff;
}
Kodlarımızın örneğini görmek için buraya, tüm kodlara ulaşmak için buraya tıklayınız.







