html - 使用 flex 将元素与底部对齐

标签 html css flexbox vertical-alignment

我正在尝试使用 flex 将父级内部的元素与父级底部对齐,但由于某种原因它不起作用。我做错了什么?

#login {
border: 1px solid red;
height: 50px;
display: flex;
}
.login {
border-radius: 5px;
padding: 5px;
align-self: flex-end;
}
#loginButton {
border-radius: 5px;
padding: 7.5px;
background-color: black;
color: white;
cursor: pointer;
}
<div id = 'login'>
<form method = 'POST' action = 'login.php'>
<input class = 'login' type = 'text' name = 'username' maxlength = '20' placeholder = 'Username' size = '10'>
<input class = 'login' type = 'password' name = 'password' maxlength = '20' placeholder = 'Password' size = '10'>
<input class = 'login' id = 'loginButton' type = 'submit' value = 'Login'>
</form>
</div>

最佳答案

在您的表格上:

form {
    display: flex;
    align-items: flex-end;
    margin: 0;
    height: 100%;
}

由于只有 Flex 容器的子元素会成为 Flex 元素,因此请将要对齐 Flex 容器的元素设为父元素。

在您的代码中,#login 是 Fl​​ex 容器,使 form 成为唯一的 Flex 元素。您需要 Flex 属性才能更深一层应用,因此也将 form 设为 Flex 容器。

关于html - 使用 flex 将元素与底部对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35440234/

相关文章:

css - Flexbox 布局字体与 fittext 脱离容器

css - 在不伤害其他容器的情况下将某些容器移动到侧面

javascript - 无法使用Javascript/JQuery更改视频静音属性

JavaScript 随机数生成器

javascript - 如果我在特定的 div 中,如何让 jQuery 启动?

html - 在 HTML 中添加背景图像

html - CSS Flexbox : flex-wrap one div to two lines, 每行单独增长

html - 我的 Rails 应用程序的不同应用程序布局

html - 使用 -webkit-transform 时固定位置不起作用

css - 如何完全删除 CSS 样式而不是替换它?