2013-08-05 180 views
1

我在jquery mobile中設計了一個移動應用程序。我試圖設計一個響應式菜單,但問題是當我的菜單內容超過1行其行爲怪異。這裏是我想要的和我得到的東西的截圖。CSS菜單未正確對齊

enter image description here

這裏是我的樣式表

<ul> 
    <li><a href="about.html"><img src="images/icon1.png" border="0" alt="" title="">About</a></li> 
    <li><a href="blog.html"><img src="images/icon2.png" border="0" alt="" title="">My blog &amp; Portfolio</a></li> 
    <li><a href="gallery.html"><img src="images/icon3.png" border="0" alt="" title="">Photos</a></li> 
</ul> 


menu ul { 
    list-style: none; 
    padding: 0px; 
    margin: 0px; 
    display: inline; 
    line-height: 25px; 
    } 
    .menu ul li { 
    list-style: none; 
    display: inline-block; 
    width: 85px; 
    height: 125px; 
    margin: 0px 6px 5px 6px; 
    background: url(images/icon_bg.png) no-repeat center top; 
    } 
    .menu ul li a { 
    font-size: 14px; 
    font-weight: bold; 
    color: #302f2f; 
    text-decoration: none; 
    text-shadow: 1px 1px #dcdcdc; 
    } 
    .menu ul li a img { 
    padding: 0px; 
    width: 85px; 
    height: 85px; 
    } 

這裏我們的jsfiddle http://jsfiddle.net/Xr8kL/

+0

提供一個的jsfiddle或活鏈接到這個問題。 – Nitesh

+0

@NathanLee用jsFiddle更新http://jsfiddle.net/Xr8kL/ – jquery404

回答

2

簡單。只需添加一個vertical-align:top;.menu ul li

例如,

.menu ul li { 
    background: url("images/icon_bg.png") no-repeat scroll center top transparent; 
    display: inline-block; 
    height: 125px; 
    list-style: none outside none; 
    margin: 0 6px 5px; 
    vertical-align: top; 
    width: 85px; 
} 

這裏是WORKING DEMO

+0

o男孩!你真棒!謝謝Nathan。你救了我的一天 – jquery404

+0

不客氣:) - @ jquery404 – Nitesh

0

您是否嘗試過使用jQuery Mobile的網格佈局,而不是試圖確定由你自己的CSS佈局?這裏是我的意思是:

http://jquerymobile.com/demos/1.3.0-beta.1/docs/content/content-grids.html

也有指導如何使這些網格響應

http://jquerymobile.com/demos/1.3.0-beta.1/docs/content/content-grids-responsive.html

+0

網格不適合我,因爲我希望每個網格都會根據屏幕寬度進行調整。所以有時會有2菜單/​​ 3菜單等我不知道如何在網格中做到這一點。 – jquery404