将图像和ul放在同一行上

时间:2013-01-14 09:06:11

标签: html css menu html-lists nav

我知道这很简单,但我现在已经忙了好几个小时..在我的标题中,我希望我的标识和我的导航在同一行...基本上,我有这个HTML:

<div class="menu">
    <div class="ct-header-line"></div>
    <img class="logo" src="images/clinictechlogo.png">
    <ul class="nav">
        <!--common features, coded? or static?-->
        <li class="active"><a href="#" id="homenav">Home</a></li>
        <li><a href="#" id="apptenav">Appointments</a></li>
        <li><a href="#" id="presnav">Prescriptions</a></li>
        <li><a href="#" id="prnav">Patient Records</a></li>
        <li><a href="#" id="billsnav">Bills</a></li>
        <!--special features, coded.....-->
        <li><a href="#">Charts</a></li>
        <li><a href="#">something</a></li>
    </ul>
</div>

以下是标题部分的一些CSS:

.logo {
    padding: 20px 10px 10px 10px;
    display: inline;
}

.menu {
    background: #4F97BD url(images/headerbg.jpg) repeat;
}

.nav {
    list-style:none;
    margin:0;
}

.nav li {
    display: inline;
}

结果是徽标出现在一行上,ul导航出现在下一行......

4 个答案:

答案 0 :(得分:2)

您需要提供<ul> display: inline-block。如果徽标的高度是固定的,您可能还需要为<ul>提供合适的line-height,以便选项与徽标垂直对齐。

答案 1 :(得分:1)

尝试添加徽标:

.logo {
    float: left; 
    width: 20%; //Or whatever the width is
}

这应该在它旁边进行包装。如果不是,您可能需要添加类似于

的内容
.nav {
    float: left; 
    width: 70%;
}

答案 2 :(得分:0)

选中此项:Inline Logo and Nav

只需将 .logo .nav 向左移动,并在底部进行明确修复。

.logo {
  padding: 20px 10px 10px 10px;
  display: inline;
  float:left;
}

.menu {
  background: #4F97BD url(images/headerbg.jpg) repeat;
}

.nav {
    padding: 20px 10px 10px 10px;
    list-style:none;
    margin:0;
    float:left;
}

.nav li {
    display: inline;
}

.clear{
  clear:both;
}

要使它们正确对齐(垂直),请将填充应用于与图像上使用的相同的导航..

希望这会有所帮助

答案 3 :(得分:0)

MERX ..

试试这个......

    .logo {
    margin:0;
    padding:0;
    display:inline;
    }

看看http://jsfiddle.net/vZZDJ/

祝你好运......)