CSS菜单以li为中心水平/ w img

时间:2014-03-08 23:08:53

标签: html css menu center centering

我一直在网上和stackoverflow上搜索,尝试了很多代码,但没有任何作用。

我想将一个菜单居中,里面有一个图像(将是一个标识)。我的代码或我失败的地方有什么问题?我已经在寻找帮助3天了......

我希望菜单位于.container类中,因此页面内容宽度为978px

预览/示例: http://jsfiddle.net/j08691/LVCkp/1/

HTML

<div id="home">
            <div class="nav clearfix">
                <div class="container clearfix">               
                    <ul id="menu">
                        <li><a href="#home" class="current">Home</a></li>
                        <li><a href="#services">Serviços</a></li>
                        <li><a href="#team">Equipa</a></li>
                        <a href="#"><img src="img/logo.png" alt="Logo Style Euclides" width="90px" height="40px"></a>
                        <li><a href="#image">Style</a></li>
                        <li><a href="#about">Sobre</a></li>
                        <li><a href="#contact"" class="right"">Contato</a></li>
                    </ul>
                </div>
                </div></div>

CSS

#home{
    width: 100%;
    background-color: #e9e0fd;
}

a{
    text-decoration: none;
}

    /*TOP MENU*/

        #home .nav img{
            float: left;
            padding: 10px;
        }

        #home .nav{
            /*float: left;*/

            margin: 0;
            padding: 0;
            width: 100%;
            margin-bottom: 10px;
        }

        ul#menu{
            /*width: 978px;*/
            margin: 0;
            padding: 0 ;
            list-style: none;
            margin-bottom: 40px; /* Tamanho da barra de menu */
            text-align: center;
            background-color: black;
        }

        ul#menu li{
            float: left;
            padding-top: 10px;
            margin: 4px;

        }

        ul#menu li a{
            text-transform: uppercase;
            font-weight: bold;
            font-size: 14px;
            letter-spacing: -1px;
            line-height: 30px;
            color: black;
            padding: 2px 24px;
        }

        ul#menu a:hover{
            background-color: #a6e897;
            color: black;
            padding-top: 24px;
            padding-bottom: 21px;
            border-bottom: 3px solid;
            border-color: #6bd951;
        }

        ul#menu a.current{
            color: #32c230;
        }

        ul#menu a.current:hover{
            background-color: #a6e897;
            color: black;
        }

1 个答案:

答案 0 :(得分:0)

以下是您的解决方案:http://jsfiddle.net/j08691/LVCkp/1/

解决方案是: 1.将徽标放在 <li> 中2.提供,例如logo 带有徽标的代码 3.将 width:auto; margin:auto; 应用于ul#menu

<强> HTML

<div id="home">
            <div class="nav clearfix">
                <div class="container clearfix">               
                    <ul id="menu">
                        <li><a href="#home" class="current">Home</a></li>
                        <li><a href="#services">Serviços</a></li>
                        <li><a href="#team">Equipa</a></li>
                        <li> <a href="#" class="logo"><img src="img/logo.png" alt="Logo Style Euclides"></a></li>
                        <li><a href="#image">Style</a></li>
                        <li><a href="#about">Sobre</a></li>
                        <li><a href="#contact"" class="right"">Contato</a></li>
                    </ul>
                </div>
                </div></div>

<强> CSS

body{
background:#ccc;
}

#home{
    width: 100%;
    background-color: #e9e0fd;
}

a{
    text-decoration: none;
}

    /*TOP MENU*/

        #home .nav img{
            float: left;
            padding: 10px;
        }

        #home .nav{
            /*float: left;*/

            margin: 0;
            padding: 0;
            width: 100%;
            margin-bottom: 10px;
        }

        ul#menu{
            /*width: 978px;*/
            list-style: none;
            margin-bottom: 40px; /* Tamanho da barra de menu */
            text-align: center;
            background-color: black;
    width:auto;
    margin:auto;
        }

        ul#menu li{
            float: left;
            padding-top: 10px;
            margin: 4px;

        }

        ul#menu li a{
            text-transform: uppercase;
            font-weight: bold;
            font-size: 14px;
            letter-spacing: -1px;
            line-height: 30px;
            color: black;
            padding: 2px 24px;
        }
ul#menu li a.logo{
width:90px;
    height:40px;
    padding:0;
    border:none;
    margin:auto;
    opacity:0.8;
}

        ul#menu a:hover{
            background-color: #a6e897;
            color: black;
            padding-top: 24px;
            padding-bottom: 21px;
            border-bottom: 3px solid;
            border-color: #6bd951;
        }

        ul#menu a.current{
            color: #32c230;
        }

        ul#menu a.current:hover{
            background-color: #a6e897;
            color: black;
        }