如何修复弹性容器中的对齐方式?
How to fix alignment in flex container?
我有一个表格。标签和输入应始终居中对齐。为此,我使用
display: flex;
align-items: center;
在容器元素上。但是,当错误文本出现在输入下方时,标签会被向下推。考虑到 flex 行为,它是绝对正确的,但是有没有办法修复标签和输入之间的对齐方式,以便它们始终居中对齐,而不管输入下方可能存在的 div?
此外,请注意这里必须使用 flex 容器。
align-items:baseline;
也不是一个选项,因为可以用文本区域代替输入。
不适用于您当前的标记。
实现此目的的一种方法是在出现错误消息时向父级添加 class。使用此 class 和包装器 div 围绕您的输入和错误消息,您绝对可以将错误定位在输入下方并将相关边距添加到容器底部。
这样错误消息就会脱离流程,因此对齐方式就会如您所愿。
.form-group.validation-error {
margin-bottom: 30px;
}
.input-wrap {
position: relative;
}
.error-message {
position: absolute;
top: 40px;
}
我有一个表格。标签和输入应始终居中对齐。为此,我使用
display: flex;
align-items: center;
在容器元素上。但是,当错误文本出现在输入下方时,标签会被向下推。考虑到 flex 行为,它是绝对正确的,但是有没有办法修复标签和输入之间的对齐方式,以便它们始终居中对齐,而不管输入下方可能存在的 div?
此外,请注意这里必须使用 flex 容器。
align-items:baseline;
也不是一个选项,因为可以用文本区域代替输入。
不适用于您当前的标记。
实现此目的的一种方法是在出现错误消息时向父级添加 class。使用此 class 和包装器 div 围绕您的输入和错误消息,您绝对可以将错误定位在输入下方并将相关边距添加到容器底部。
这样错误消息就会脱离流程,因此对齐方式就会如您所愿。
.form-group.validation-error {
margin-bottom: 30px;
}
.input-wrap {
position: relative;
}
.error-message {
position: absolute;
top: 40px;
}