在我創建的每一個互聯網應用中,我都試圖避免創建完全由圖片組成的菜單。在我看來,菜單系統中應該使用文字。這樣做也會讓菜單變得更干淨利落、清晰和易讀,不用考慮應用程序如何讀取它,以及頁面放大的時候也不會失真等。或許這只是我的想法?但是我們不能創建即好看又好用的菜單嗎?
下面是創建下面的有圖標支持的導航菜單的代碼和樣式。
點擊這裡 查看演示(在新窗口中打開).
<!--navigation.html-->
<ul class="nav">
<li class="home"><a href="#link">home</a></li>
<li class="about"><a href="#link">about</a></li>
<li class="work"><a href="#link">work</a></li>
</ul>
The CSS
/* style.css */
.nav {width:550px; height:50px; padding:0px 25px; margin:0px; background:url(img/bg.gif) repeat-x; border:1px solid #efefef;}
.nav li {float:left; width:125px; height:50px; display:inline; padding:0px; margin:0px 25px 0px 0px;}
li.home {background:url(img/nav-home.gif) top left no-repeat;}
li.home:hover {background:url(img/nav-homeHover.gif) top left no-repeat;}
li.about {background:url(img/nav-about.gif) top left no-repeat;}
li.about:hover {background:url(img/nav-aboutHover.gif) top left no-repeat;}
li.work {background:url(img/nav-work.gif) top left no-repeat;}
li.work:hover {background:url(img/nav-workHover.gif) top left no-repeat;}
.nav li a {display:block; padding:15px 0px 0px 50px; color:#000; font-size:18px; font-family:arial; height:35px; text-decoration:none;}
.nav li a:hover {color:#C00;}
在更精細的網站設計中,菜單會變的更多的樣式來支持。公平的說,如果你想使用一款特定的字體——事實上很少有網站允許這樣做——那麼你就需要使用圖片、Flash或一些魔法。最後,盡可能保持易用性是非常重要的。
學習的最佳方式是練習,試著吧圖標移動到文字的後面,或者創建一個有圖標的垂直導航菜單系統。
--------------------------------------------------------------------------------
神飛認為,其實這是一個很簡單的教程,屬於入門級別的,沒有什麼高級的技術,只是提供了一個制作帶圖標的水平導航菜單的方法。從網站的性能上來說,這樣做並不是很好,現在最推薦的方法是CSS Sprite,就是將用到的那些圖片放到一個圖片文件中,然後通過background-position來分別調用。另外,對於使用特殊文字的情況,現在的情況有了一點小改觀,就是CSS3已經開始支持網站的內嵌字體了。