【发布时间】:2023-03-31 05:07:01
【问题描述】:
我一直在玩 Fireship 频道的 Youtube 视频“带有 CSS 的动画响应式导航栏”中的导航栏。我试图让导航栏中的项目水平对齐到中心。 HTML 具有以下结构:
<nav class="navbar">
<ul class="navbar-nav">
<li class="logo">
<a href="#" class="nav-link">
<span class="link-text logo-text">Home</span>
我的 CSS 是:
.navbar {
position: fixed;
background-color: var(--bg-primary);
transition: width 600ms ease;
overflow: auto;
}
.navbar-nav {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
align-items: center;
height: 100%;
}
.nav-item {
width: 100%;
}
.nav-link {
display: flex;
align-items: center;
height: 5rem;
color: var(--text-primary);
text-decoration: none;
filter: grayscale(100%) opacity(0.7);
transition: var(--transition-speed);
}
据我了解,设置以下项目应水平居中:
- 将 .navbar-nav 设置为 display:flex
- 将 .navbar-nav 设置为 flex-direction:column
- 将 .navbar-nav 设置为 align-items center;
但是,我最终得到的是以下内容:
非常感谢任何帮助。
【问题讨论】:
-
你在使用 Bootstrap 吗?
-
@BOZ 不,我不是。怎么会?
-
父元素
.navbar-nav {设置为列,但内部元素仍处于行状态。为此,.nav-link {类应该是justify-content: center;你会尝试添加它吗?如果你愿意,我可以举例说明。 -
下次提供更多 HTML 会很有帮助。
-
@MongoosePainter 请提供完整的 html。