Float right正在颠倒我导航栏的顺序



我有一个响应导航栏,当我将"工作"one_answers"联系"链接向右移动时,它会颠倒顺序。我试着将它们添加到div中,但当我这样做时,链接"work"会显示在移动视图中的汉堡包菜单旁边。

.topnav {
overflow: hidden;
position: fixed;
width: 100%;
z-index: 5;
padding-top: 20px;
}
.topnav a {
float: left;
display: block;
color: black;
text-align: center;
padding: 16px;
line-height: 19px;
text-decoration: none;
font-size: 18px;
}
.topnav a:hover {
color: black;
}
.topnav a.active {
color: black;
}
.topnav .icon {
display: none;
}
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<div class="topnav" id="myTopnav">
<a href="home.html" class="active">NAME</a>
<a href="work.html">WORK</a>
<a href="contact.html">CONTACT</a>
<a href="javascript:void(0);" class="icon" onclick="myFunction()">
<i class="fa fa-bars"></i>
</a>
</div>
function myFunction() {
var x = document.getElementById("myTopnav");
if (x.className === "topnav") {
x.className += " responsive";
} else {
x.className = "topnav";
}
}

这就是目前左边的情况,但当我把这个代码添加到右边浮动时,就是当保留订单问题发生时

.topnav a:not(:first-child) {
float: right;
padding-right: 32px;
padding-left: 0px;
}

这可能是一个快速的解决方案(浮动,例如包含左浮动元素的span right(:

.topnav {
overflow: hidden;
position: fixed;
width: 100%;
z-index: 5;
padding-top: 20px;
}
.topnav a {
float: left;
display: block;
color: black;
text-align: center;
padding: 16px;
line-height: 19px;
text-decoration: none;
font-size: 18px;
}
.topnav a:hover {
color: black;
}
.topnav a.active {
color: black;
}
.topnav .icon {
display: none;
}
span.right {
float: right;
}
.topnav a:not(:first-child) {
padding-right: 32px;
padding-left: 0px;
}
<div class="topnav" id="myTopnav">
<a href="home.html" class="active">NAME</a>

<span class="right">
<a href="work.html">WORK</a>
<a href="contact.html">CONTACT</a>
</span>
<a href="javascript:void(0);" class="icon" onclick="myFunction()">
<i class="fa fa-bars"></i>
</a>
</div>

最新更新