У меня есть этот гибкий бокс с несколькими полями ввода. Однако я не могу заставить его выглядеть так, как хочу. Вот код:
.inputSettings {
display: flex;
flex-direction: row;
flex-wrap: wrap;
max-width: 750px;
}
.inputSettings > form {
background: red;
border: 1px solid yellow;
flex: 1;
}
.inputSettings > form > input {
width: 165px;
height: 30px;
border-radius: 5px;
}<div class = "inputSettings">
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
</div>JSfiddle: https://jsfiddle.net/rz94hwbv/2/
Я хочу равномерно распределить поля ввода внутри этого гибкого блока таким образом, чтобы край крайнего левого поля ввода касался левой границы поля, а край крайнего правого поля ввода касался крайней правой границы. Как видите, справа от каждого поля ввода всегда есть отступ. Я перепробовал все, что мог придумать, но не могу придумать достойного решения. Любая помощь будет оценена по достоинству.
Проблема в flex:1 на форме и измененной ширине на входе .... С flex:1 форма всегда будет настолько широкой, насколько это возможно.
Что-то вроде этого ?? i.stack.imgur.com/o0ZvB.jpg
Или это - jsfiddle.net/rz94hwbv/13
Спасибо всем, flex-direction: column сделали свое дело.






Проблема, которую я вижу, связана с flex:1; в отличие от ограниченной ширины .inputSettings > form > input. Если вы хотите, чтобы поля соприкасались с краями, входные данные должны иметь гибкий рост.
.inputSettings {
display: flex;
flex-direction: row;
flex-wrap: wrap;
max-width: 850px;
border-right: 12px solid purple;
}
.inputSettings > form {
background: red;
border: 1px solid yellow;
display: flex;
flex-direction: column;
flex: 1;
}
.inputSettings > form > input {
border-radius: 5px;
}<div class = "inputSettings">
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
<form>
<label>First Name</label>
<input type = "text" id = "fname" name = "fname">
</form>
</div>
Вы имеете в виду вот так - jsfiddle.net/rz94hwbv/7?