Вам следует удалить width: 100%
, если вы не хотите, чтобы они занимали всю ширину родительского элемента. А так как вы используете flex для родителя, вы можете также использовать свойства flex для дочерних элементов и иметь следующие параметры:
.item {
flex-basis: 33%; /* <-- Added in lieu of the width */
max-width: 400px;
margin: 0px 5px; /* <-- Added to give left/right margins */
}
Если у вас есть только 3 ребенка от родителей, вы также можете сделать это:
.item {
flex-grow: 1; /* <-- Lets them grow equally */
flex-shrink: 1; /* <-- Lets them shrink equally. OPTIONAL as 1 is the default */
max-width: 400px;
margin: 0px 5px; /* <-- Added to give left/right margins */
}
Сокращение для последнего:
.item {
flex: 1; /* <-- Lets them grow/shrink equally */
max-width: 400px;
margin: 0px 5px; /* <-- Added to give left/right margins */
}
Кроме того, если у вас есть только эти 3 дочерних элемента в родительском, вы можете удалить flex-wrap: wrap;
из .wrapper
, если вы не хотите, чтобы дочерние элементы переносились. В этом случае этого не произойдет, так как дочерние элементы имеют процентную ширину, которая составляет до 100%. Но это может сбить с толку, и это противоречит вашим намерениям.