Если вы используете display:table-row
и т. Д., То вам нужна правильная разметка, которая включает в себя таблицу содержания. Без этого ваш исходный вопрос в основном обеспечивает эквивалентную неправильную разметку:
<tr style="width:100%">
<td>Type</td>
<td style="float:right">Name</td>
</tr>
Где таблица выше? Вы не можете просто получить строку из ниоткуда (tr должен содержаться в table
, thead
, tbody
и т.
Вместо этого добавьте внешний элемент с display:table
, поместите ширину 100% на содержащий элемент. Две внутренние ячейки автоматически перейдут на 50/50 и выровняют текст прямо на второй ячейке. Забудьте floats
с элементами таблицы. Это вызовет так много головных болей.
Разметка:
<div class="view-table">
<div class="view-row">
<div class="view-type">Type</div>
<div class="view-name">Name</div>
</div>
</div>
CSS:
.view-table
{
display:table;
width:100%;
}
.view-row,
{
display:table-row;
}
.view-row > div
{
display: table-cell;
}
.view-name
{
text-align:right;
}