菜单布局适用于除iPhone以外的所有浏览器

时间:2010-11-12 18:54:59

标签: iphone safari css

我的菜单与StackOverflow上的菜单非常相似。问题是我的菜单在我为iPhone测试的所有浏览器中看起来都是正确的。

这是iPhone的屏幕截图 iphone menu

现在很明显,“添加事件”按钮的大小应与其余按钮相同。

这是我的标记

        <div id="menucontainer">
            <div class="floatleft">
                <ul class="menu">
                    <li><%: Html.NavigationLink("Now", "Index", "Events")%></li>
                    <li><%: Html.NavigationLink("Coming", "Coming", "Events")%></li>
                    <li><%: Html.NavigationLink("Hot", "Hot", "Events")%></li>
                    <li><%: Html.NavigationLink("Tags", "Index", "Tags")%></li>
                    <li><%: Html.NavigationLink("Users", "Index", "Users")%></li>
                </ul>
            </div>
            <div class="floatright">
                <ul class="menu">
                    <li><%: Html.NavigationLink("Add Event", "AddEvent", "Events")%></li>
                </ul>
            </div>
        </div>

这是我的CSS

#menucontainer{position:relative; width:675px; float:right;}
ul.menu
{
    padding: 0 0 2px;
    position: relative;
    margin: 0;
}

ul.menu li
{
    display: inline;
    list-style: none;
}

ul.menu li a
{
    padding: 8px 18px;
    font-weight: bold;
    text-decoration: none;
    line-height: 2.8em;
    background-color: #666;
    color: #fff;
    border: 1px solid black;
    text-shadow:#000 0px 1px 1px;
}

ul.menu li a.youarehere
{
    background-color:@brand_color;
    color: #fff;
}

ul.menu li a:hover
{
    background-color:@brand_color;
    text-decoration: none;
}

ul.menu li a:active
{
    background-color:@brand_color;
    text-decoration: none;
}

ul.menu li.selected a
{
    background-color:@brand_color;
    color: #000;
}
.floatright
{
    float: right;
}
.floatleft
{
    float: left;
}

不幸的是我无法想出这个。提前感谢任何方向。

编辑:

这是发送到浏览器的最终输出

        <div id="menucontainer">
            <div class="floatleft">
                <ul class="menu">
                    <li><a class="youarehere" href="/">Now</a></li>
                    <li><a href="/events/coming">Coming</a></li>
                    <li><a href="/events/hot">Hot</a></li>
                    <li><a href="/tags">Tags</a></li>
                    <li><a href="/users">Users</a></li>
                </ul>
            </div>
            <div class="floatright">
                <ul class="menu">
                    <li><a href="/events/addevent">Add Event</a></li>
                </ul>
            </div>
        </div>

编辑:

jsbin上的再现 http://jsbin.com/akadi3/2(注意:显然你需要iOS浏览器才能看到问题)

1 个答案:

答案 0 :(得分:4)

好的,所以经过大量的摆弄后,似乎如果我向height添加了menucontainer属性,那么我一切都很好。

#menucontainer
{
    position:relative;
    width:675px;
    height:40px; /* this fixed the problem */
    float:right;
    font-size:80%;
}