CSS列表导航:将所有项目向左对齐,但将最后一个项目向右对齐

凯西·克鲁克斯顿(Casey Crookston)

我有一个简单的列表驱动导航,如下所示:

Page 1    Page 2    Page 3    My Account

我需要“我的帐户”才能向右浮动:

Page 1    Page 2    Page 3                                                      My Account

这是清单:

<nav class="nav">
    <ul class="menu">
        <li>Page 1</li>
        <li>Page 2</li>
        <li>Page 3</li>
        <li>My Account</li>
    </ul>
</nav>

我在最后一个列表项上添加了一个float:right,最初看起来不错,直到我将屏幕缩小了一点。但是随后它迫使前三个项目略微降低,因此“我的帐户”仍然正确对齐,但比其他三个项目高了一点。像这样:

                                       My Account
Page 1    Page 2    Page 3    

之后编辑:

实际的列表比我上面发布的更为复杂。它具有下拉菜单和许多样式。这是CSS:

.nav, .menu {
    height: 54px;
}

.nav {
    background: #004F9D;
    clear: both;
    display: block;
    position: relative;
}

.nav ul ul {
    display: none;
}

.nav ul li:hover > ul {
    display: block;
}

.nav ul ul {
    background: white;
    padding: 0;
    position: absolute; 
    top: 100%;
    z-index:1000;
    background-color: #ffffff;
    border: 1px solid #cccccc;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    background-clip: padding-box;
    min-width: 160px;
    font-size: 14px;
}

.nav ul ul li {
    float: none; 
    position: relative;
}

.nav ul ul li a {
    color: black;
}   

.nav ul ul li a:hover {
    background: #428BCA;
}

.menu {
    clear: both;
    display: block;
    overflow: hidden;
}

.menu li {
    clear: none;
    display: block;
    float: left;
    padding: 10px 0;
}

.menu li img {
    padding-right:10px;
}

.menu li:hover {
    background-color: #00aedd;
}

.menu a, .menu span {
    background-repeat: no-repeat;
    clear: both;
    display: block;
    color: #fff;
    font-size: 14px;
    height: 34px;
    line-height: 35px;
    overflow: hidden;
    text-decoration: none;
}

.menu a {
    padding-left: 15px;
    padding-right: 15px;
}

.menu span {
    padding-right: 15px;
}
卡尔·爱德华兹

这是使用css对齐属性flexbox的解决方案与使用浮点数相比,它要干净一些,因为它可以使所有内容保持在文档流中。请注意,它支持IE浏览器9及更高版本

.menu {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
}

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

.menu li:not(:last-of-type) {
  margin: 0 5px;
}

.menu li:last-of-type {
    margin-left: auto;
}

JSFiddle

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将所有项目向左对齐,但最后一个在flexbox容器中

来自分类Dev

将导航中的3个元素中的2个向右对齐,将另一个向左对齐

来自分类Dev

Bootstrap 4-将导航栏项目向右对齐

来自分类Dev

在“选择选项”中将一个单词向左对齐,将一个单词向右对齐

来自分类Dev

将项目(使用':before')向右对齐

来自分类Dev

将文本向右对齐,向左溢出

来自分类Dev

列表项目符号向右对齐

来自分类Dev

将引导导航栏向右对齐

来自分类Dev

flex-将最后一项向右对齐

来自分类Dev

将项目符号点向右而不是向左对齐

来自分类Dev

当父项将所有子元素对齐到中心时,将一个子元素向左对齐

来自分类Dev

显示表格/表格单元格-将一个单元格向右对齐

来自分类Dev

显示表格/表格单元格-将一个单元格向右对齐

来自分类Dev

CSS Flexbox:将最后n个项目对齐到末尾

来自分类Dev

将项目与CSS对齐

来自分类Dev

在Bootstrap 5中将导航项向右对齐

来自分类Dev

如何将弹性项目右对齐?

来自分类Dev

将所有项目水平对齐到CSS网格的左侧

来自分类Dev

将最后一个列表项与右侧对齐

来自分类Dev

在Flexbox中将项目向右对齐

来自分类Dev

XML:如何将项目(HBox / Vbox的按钮)向右对齐

来自分类Dev

CSS将绝对子div向右对齐的方法

来自分类Dev

CSS flex-将项目向左对齐,并将容器向中心对齐

来自分类Dev

GridExtra:将文本向右对齐

来自分类Dev

Android将textview向右对齐

来自分类Dev

将UITableViewCell中的文本向右对齐

来自分类Dev

图片,然后将文本向右对齐

来自分类Dev

Android将textview向右对齐

来自分类Dev

将UITableViewCell中的文本向右对齐

Related 相关文章

热门标签

归档