Почему <td></td><td></td> не совпадает с <td colspan = "2"> </td> - PullRequest
4 голосов
/ 09 сентября 2011

Я заменяю несколько TD одним атрибутом TD и атрибутом colspan.

Однако это выглядит совершенно иначе.

Я не понимаю, почему <td></td><td></td> отличаетсяна <td colspan="2"></td>

Моя проблема заключается в том, что сумма ширины первых 2 TD не совпадает с шириной объединенного TD.Поэтому мои ячейки не выстраиваются в ряд.

Это происходит в IE, FF и Safari.

БОНУСНЫЙ ВОПРОС: Есть ли какой-либо стиль и т. Д., Который я могу применить, чтобы ширина столбца colspan была равнасумма ширины других TD, подлежащих замене?

Почему я это делаю?Я пытаюсь уменьшить объем HTML-кода, генерируемого DevExpress XtraReports, который использует тысячи крошечных TD для позиционирования элементов.Он раздувает HTML много раз, поэтому я собираю его перед отправкой в ​​браузер и выполняю элементарный поиск / замену.Это хак, я знаю.

Ответы [ 4 ]

7 голосов
/ 09 сентября 2011

В первом примере будут два набора полей, отступы, правила CSS и т. Д. Во втором примере будет применяться только один набор правил, но он применяется к элементу, который помещается в два столбца.

1 голос
/ 09 сентября 2011

Разместите свой код. Иначе это может быть что угодно. Но супер легкий материал ниже работает.

Это создаст таблицу с двумя строками. Первый ряд имеет 3 столбца. Второй ряд имеет 2 столбца, первый занимает два столбца.

<table border="1">
<tr>
<td>Something</td>
<td>Something</td>
<td>Something</td>
</tr>
<tr>
<td colspan=2>Something2</td>
<td>Something</td>
</tr>
</table>
0 голосов
/ 09 сентября 2011

Вы должны установить их ширину со стилями. Это практически единственный способ. Но тогда вы можете просто использовать DIV с указанной шириной. Больше контроля.

Таблицы предназначены для данных. Раньше я был уродом стола. После того, как я освоил CSS для разметки, я редко использую таблицы, если не хочу менять ширину. Это классная вещь в таблицах - они будут хорошо заполняться на основе данных.

Я никогда не видел, чтобы дисплей был шире или уже, чем выше / ниже. Если в вашем коде нет ошибки. Отправьте это, и мы увидим, что мы можем сделать. Что именно вы пытаетесь достичь всем этим?

0 голосов
/ 09 сентября 2011

Я, конечно, мог видеть, где несколько tds будут отображаться по-разному из-за расстояния между столбцами.Один из способов убедиться в этом - наложить границу на стол (например).Это должно привести вас в каком-то направлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...