JSFiddle - React, Tailwind, and code Playground
HTML
<div class="block">
<div class="item">1</div>
<div class="item">2</div>
<div class="item item-b">3</div>
<div class="item">4</div>
<div class="item">5</div>
<div class="item">6</div>
</div>
<div class="block">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
<div class="item">4</div>
<div class="item item-b">5</div>
<div class="item">6</div>
<div class="item">7</div>
</div>
<div class="block">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
<div class="item">4</div>
<div class="item">5</div>
<div class="item">6</div>
<div class="item item-b">7</div>
<div class="item">8</div>
<div class="item">9</div>
<div class="item">10</div>
</div>
<div class="block">
<div class="item">1 <strong>а вот тут начнутся проблемы с шириной</strong> </div>
<div class="item">2</div>
<div class="item item-b">3</div>
<div class="item">4</div>
<div class="item">5</div>
<div class="item">6</div>
<div class="item">7</div>
</div>
CSS
@import url('https://fonts.googleapis.com/css2?family=Neucha&display=swap');
* {
box-sizing: inherit;
}
html {
box-sizing: border-box;
}
body {
margin: 0;
font-family: 'Neucha', cursive;
}
.block {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-bottom: 40px;
}
.item {
flex-grow: 1;
padding: 10px;
background: #eee;
text-align: center;
}
.item-b {
width: 100%;
background: #ddd;
}
.item-b ~ .item {
width: 100%;
}