Вы можете полностью изменить стиль таблицы, изменив все элементы внутри таблицы на display: block;
например,
table, thead, tbody, tr, th, td {display: block; text-align: left;}
это просто широкая развертка, так как вы можете также иметь некоторые из них display: inline;
или float
, как если бы они не были элементами таблицы ... это зависит от того, как вы хотите, чтобы ваш отдельный столбец выглядел.
и, возможно, сгенерированный контент поможет в отношении заголовков таблиц (визуальных ассоциаций) .. т.е. скрывая элементы <th>
и создавая "заголовок" до того, как контент "ячейки" .. попытается создать образец скрипки
Код в скрипте:
html, body {margin: 0; padding: 0;}
table, thead, tbody, tr, th, td {display: block; text-align: left;}
thead {display: none;}
td:before {
float: left;
width: 200px;
background: #eee;
}
td {overflow: hidden;}
td:before {content: "Item";}
td+td:before {content: "Price (Euro)";}
td+td+td:before {content: "Postage and Packaging (Euro)";}
td+td+td+td:before {content: "Estimated Delivery Time";}
HTML: примечание Я поместил строку заголовка в <thead>
, чтобы ее можно было скрыть
<table class="single-borders">
<thead>
<tr><th>Item</th><th>Price (Euro)</th><th>Postage and Packaging (Euro)</th><th>Estimated Delivery Time</th></tr>
</thead>
<tbody>
<tr><td>Rocking Horse</td><td>€ 40.00</td><td>€ 20</td><td>3 working days</td></tr>
<tr><td style="color:#666">Princess Costume *</td><td>€ 20.00</td><td>€ 5</td><td>Next day if ordered before 12.00</td></tr>
<tr><td>Soldier Uniform</td><td>€ 20.00</td><td>€ 5</td><td>Next day if ordered before 12.00</td></tr>
<tr><td>Pink Roller Skates</td><td>€ 35.00</td><td>€ 10</td><td>Next day if ordered before 12.00</td></tr>
<tr><td style="color:#666">Black Roller Skates *</td><td>€ 35.00</td><td>€ 10</td><td>Next day if ordered before 12.00</td></tr>
</tbody>
</table>
Обновлено
согласно комментариям, чтобы изменить на один столбец 176px;
попробуйте этот CSS:
html, body {margin: 0; padding: 0;}
table, thead, tbody, tr, th, td {display: block; text-align: left;}
table {width: 176px;}
thead {display: none;}
tr {
margin: 10px 0;
border: 1px solid #000;
}
td:before {
display: block;
background: #eee;
font-weight: bold;
}
td:before {content: "Item";}
td+td:before {content: "Price (Euro)";}
td+td+td:before {content: "Postage and Packaging (Euro)";}
td+td+td+td:before {content: "Estimated Delivery Time";}
, который изменяет отображение на это:
Как только вы поймете, что можете стилизовать таблицу таким образом, то есть, как и любой другой элемент - вы можете сделать так, чтобы она выглядела так, как вы хотите;)