【发布时间】:2020-02-04 05:32:35
【问题描述】:
我想在顶部导航菜单的右侧对齐项目,这是一个固定位置的菜单,所以 text-align: right;不会工作。
到目前为止我尝试了什么: 对于正常显示(计算机/笔记本电脑),我尝试执行以下操作:
.navbar {
position: fixed;
width: 100%;
}
.navbar .menu_items {
margin-left: 75% /*this leaves a 25% on the right for the menu items *%
}
这对于正常显示效果很好,但是当最小化浏览器的窗口时,菜单项会堆叠在剩余 25% 的宽度中。
我想过对不同尺寸的屏幕进行媒体查询,但效率不高。
这是我的代码:
CSS
body, header{
margin: 0;
padding: 0;
}
.navbar {
position: fixed;
background-color: rgb(90,80,50);
width: 100%;
border-bottom: 2px solid rgb(70,60,30);
box-shadow: 2px 2px 3px 1px rgb(70,60,30);
}
.menu-items {
margin: 0;
padding: 1em 1em 1em 0em;
}
.navbar .menu-items li {
padding: inherit;
font-size: 1.5em;
display: inline;
}
.navbar .menu-items li a:link,
.navbar .menu-items li a:visited {
padding: inherit;
padding-left: 0.5em;
text-decoration: none;
color: #eee;
}
.navbar .menu-items li a:hover {
background-color: rgb(70,60,30)
}
HTML
<!DOCTYPE html>
<html>
</html>
<header>
<nav class="navbar">
<ul class="menu-items">
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
</header>
<div class="body">
<br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr> <hr> <br> <hr> <br> <hr>
</div>
</html>
【问题讨论】:
-
你试过
flexbox吗?您可以使用justify-content: flex-end将.menu-items设置为flexbox 容器 -
感谢它的工作,但它增加了一些边距。我想我可以对付他们。