【发布时间】:2020-04-04 21:15:29
【问题描述】:
我有一个响应式导航栏,当我将“工作”和“联系人”链接向右浮动时,它会颠倒顺序。我尝试将它们添加到 div 中,但是当我这样做时,链接“工作”会显示在移动视图中的汉堡菜单旁边。
.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;
}
【问题讨论】:
-
是的,这就是 float:right 的工作原理。你为什么不浮动整个顶部导航呢?
-
当我将它添加到 .topnav 时,没有任何变化,.topnav a 当前有一个浮动,但我需要 2 个链接“工作,联系”向右浮动。当我尝试通过 .topnav a:not(:first-child) 将其定位为向右浮动时,它会反转顺序。