Html 为什么';t对齐内容/对齐项目是否在此处工作?

Html 为什么';t对齐内容/对齐项目是否在此处工作?,html,css,flexbox,Html,Css,Flexbox,所以我只是想做一个简单的导航条,然后我开始玩flexbox。为什么align content在这里不起作用?我可以让justify content正常工作,但我就是不能垂直对齐。这是密码 *{ 保证金:0; 填充:0; } #Navbar_包装器{ } #导航栏{ 宽度:100%; 高度:300px; 背景:深灰色; } #导航栏内容包装器{ 宽度:100%; 显示器:flex; 列表样式:无; 证明内容:中心; 对齐内容:居中对齐; } #导航栏内容{ 显示:内联块; } #导航栏内容包装器

所以我只是想做一个简单的导航条,然后我开始玩flexbox。为什么
align content
在这里不起作用?我可以让
justify content
正常工作,但我就是不能垂直对齐。这是密码

*{
保证金:0;
填充:0;
}
#Navbar_包装器{
}
#导航栏{
宽度:100%;
高度:300px;
背景:深灰色;
}
#导航栏内容包装器{
宽度:100%;
显示器:flex;
列表样式:无;
证明内容:中心;
对齐内容:居中对齐;
}
#导航栏内容{
显示:内联块;
}
#导航栏内容包装器a{
颜色:白色;
字体:16px普通Arial;
文字装饰:无;
填充:5px 10px 5px 0px;
}


这与FlexBox无关。只需将线高度设置为300px,就完成了。(也适用于非FlexBox。)

*{
保证金:0;
填充:0;
}
#Navbar_包装{}#Navbar{
宽度:100%;
高度:300px;
背景:深灰色;
}
#导航栏内容包装器{
宽度:100%;
显示器:flex;
列表样式:无;
证明内容:中心;
对齐内容:居中对齐;
线高:300px;
}
#导航栏内容{
显示:内联块;
}
#导航栏内容包装器a{
颜色:白色;
字体:16px普通Arial;
文字装饰:无;
填充:5px 10px 5px 0px;
}


这里有两个问题:

  • 你用错地方了<代码>对齐内容用于在多行弹性项目之间分配空间(例如使用
    弹性包装:包装
    )。您正在查找
    align items
    属性
  • 没有多余的空间可以分发。高度是在flex容器的父元素(
    #Navbar
    )上设置的,而不是flex容器本身(
    #Navbar\u Content\u Wrapper
    )。换句话说,您的flex容器仅与其内容一样高

  • 如果投票人愿意解释,也许我们可以达成一项协议,让你的代表积分回来。但这并不能真正回答我的问题。我想知道如何使用FlexBox,因为我非常确信这是使用它们的目的之一。我知道我可以使用线条高度,但我希望能够使用对齐项目。或者至少知道为什么它在这种情况下不起作用?@DevSock嗯,navbar_content_包装没有设置高度,因此它将有其默认高度(即一行文本)。没有CSS告诉它相反的情况。flex属性不会将navbar\u content\u包装增加到更大的高度。只是好奇,你在阅读了我的答案后进行了编辑吗?@cimmanon是的,但我先在这里将我的评论发布到OP,然后才发布,所以你可以看到我已经意识到高度是个问题。或者说身高不够。顺便说一句,我仍然认为我原来的解决方案是更好的,因为它可以与FlexBox一起使用,也可以不使用FlexBox。