мое строительство:
<div style="display: table;">
<div style="display: table-cell; width: 50px; background-color: red;">a</div>
<div style="display: table-cell; width: 100%; background-color: green;">...</div>
<div style="display: table-cell; width: 50px; background-color: red;">a</div>
</div>
краевые столбцы должны оставаться на 50 пикселей шириной, все равно это похоже на то, что я ничего не установил
Во-первых, родительский <div>
не имеет явной width
Также вам, вероятно, понадобится использовать table-layout: fixed;
также:
<div style="display: table; width: 100%; table-layout: fixed;">
<div style="display: table-cell; width: 50px; background-color: red;">a</div>
<div style="display: table-cell; width: 100%; background-color: green;">...</div>
<div style="display: table-cell; width: 50px; background-color: red;">a</div>
</div>
min-width:50px
вместо
То, что происходит здесь, является центральной табличной ячейкой, которая растягивается до 100% неопределенного значения. Попробуйте дать таблице ширину и позволить центральной ячейке сортировать себя, а не определять:
<div style="display:table; width:400px;">
<div style="display:table-cell; width:50px; background-color: red;"> </div>
<div style="display:table-cell; background-color: green; width:auto;">content</div>
<div style="display:table-cell; width:50px; background-color: red;"> </div>
</div>