Mendesain Menu (Vertikal) dengan CSS

on 10 Agustus 2009

Untuk mendesain menu dengan CSS kita memerlukan daftar menu yang dibuat dengan HTML.
Tag HTML yang digunakan untuk membuat menu adalah ul. Di bawah ini adalah kode HTML
dari menu yang akan didesain oleh CSS.

<ul>

<li><a href="/">Home</a></li>

<li><a href="services.html">Services</a></li>

<li><a href="support.html">Suport</a></li>

<li><a href="about.html">About Us</a></li>

<li><a href="contact.html">Contact Us</a></li>

</ul>

Kode tersebut akan menghasilkan tampilan sbb:
· Home
· Services
· Support
· About Us
· Contact Us
Untuk mendesain menu tersebut kita harus memberi id terlebih dahulu untuk membedakan
dengan daftar ul yang lain, sehingga kode di atas menjadi sbb:

<ul id=”navid=”nav”>

<li><a href="/">Home</a></li>

<li><a href="services.html">Services</a></li>

<li><a href="support.html">Suport</a></li>

<li><a href="about.html">About Us</a></li>

<li><a href="contact.html">Contact Us</a></li>

</ul>

Setelah diberi id, kita bisa memilih menu tersebut dengan CSS dan mulai mendesainnya. Kode
CSS nya adalah sebagai berikut:

<style>

#nav {

list-style-type: none;

margin: 0;

padding: 0;

width: 180px;

background-color: #663300;

}

</style>

Dengan kode diatas maka menu tidak akan menampilkan bullet (dengan kode list-style-type:
none), batas dan padding akan menjadi 0, lebar 180px, dan akan menampilkan warna latar
cokelat. Kurang lebih tampilannya seperti ini:



Setelah itu kita akan mendesain tiap menu item, yang mana tag dari item-item tersebut adalah


  • . Selain tag li, kita juga akan mendesain tag (link) sehingga area yang bisa
    diklik menjadi lebih besar (tidak hanya teks nya saja, melainkan seluruh kotak).
    Kita perlu menambahkan kode CSS lagi untuk mendesainnya. Kode CSS nya adalah sbb:

    #nav li {

    margin: 0;

    padding: 0;

    }

    #nav a {

    display: block; /* untuk memperbesar area klik karena tag a defaultnya inline

    */

    color: #FFF;

    text-decoration: none;

    padding: 0 15px;

    line-height: 2.5; border-bottom:1px solid #FFF;

    }

    Degan kode tersebut, maka tampilan menu akan menjadi sebagai berikut:

    Untuk mengatasi tampilan yang tidak diharapkan tersebut maka perlu ditambahkan kode sbb:

    #nav {

    margin: 0;

    padding: 0;

    background: #6F6146;

    list-style-type: none;

    width: 180px;

    float: left; /* Contain floated list items */

    }

    #nav li {

    margin: 0;

    padding: 0;

    float: left; /* This corrects the */

    width: 100%; /* IE whitespace bug */

    }

    Dengan kode tersebut maka menu pun akan tampil seperti yang diharapkan pada IE6.
    Untuk menambah efek ketika mouse di atas salah satu menu item, maka kita akan mengubah
    warna latar dari menu item tersebut dengan kode:

    #nav a:hover {

    background: #330000;

    }

    Catatan:
    a. IE6 merupakan browser yang tidak standar, sehingga seringkali menampilkan tampilan yang tidak
    diharapkan. Karena itu, selalu gunakan browser yang standar seperti Mozilla Firefox dan Safari.
    b. Dan selalu periksa hasil desain kita di IE6 agar hasil desain kita sama di semua browser.
    Sehingga kode html dan css selengkapnya adalah sbb:


    <!-- vertical.css -->

    <html>

    <head><title></title></head>

    <style type="text/css">

    #container {

    width: 720px;

    }

    #header {

    height: 100px;

    background-color: #9FB5BD;


    }

    #content {

    width: 540px;

    float: left;

    }

    #sidebar {

    width: 180px;

    float: right;

    }

    #footer {

    clear: both;

    }

    #nav {

    margin: 0;

    padding: 0;

    list-style-type: none;

    background-color: #663300;

    width: 180px;

    float: left;

    }

    #nav li {

    margin: 0;

    padding: 0;

    float:left;

    width:100%;

    }

    #nav a {

    display: block; /* untuk memperbesar area klik karena tag a defaultnya inline

    */

    color: #FFF;

    text-decoration: none;

    padding: 0 15px;

    line-height: 2;

    border-bottom:1px solid #FFF;

    }

    #nav a:hover {

    background: #330000;

    }

    </style>

    </head>

    <body>

    <ul id='nav'>

    <li><a href="#">Home</a></li>

    <li><a href="services.html">Services</a></li>

    <li><a href="support.html">Suport</a></li>

    <li><a href="about.html">About Us</a></li>

    <li><a href="contact.html">Contact Us</a></li>

    </ul>

    </body>

    </html>

    di petik dari www.ilmukomputer.com

    0 komentar:

    Posting Komentar