<col> width возвращает 0 для IE и Chrome

У меня есть таблица с тремя столбцами. Я использую тег, чтобы указать ширину столбца. Образец кода:

<table width="100%" border="1">
  <colgroup style="background-color:#FF0000;">
  <col width="100px" id="id1"></col>
  <col width="80px" id="id2"></col><col id="id3"></col></colgroup>
  <tbody>
  <tr>
    <th>ISBN</th>
    <th>Title</th>
    <th>Price</th>
  </tr>
  <tr>
    <td>3476896</td>
    <td>My first HTML</td>
    <td>$53</td>
  </tr>
  <tr>
    <td>2489604</td>
    <td>My first CSS</td>
    <td>$47</td>
  </tr>
<tbody>
</table>

Проблема заключается в ширине столбца col ($("#id1"). Width()) возвращает 0 для IE и Chrome, и он отлично работает в FF. Как узнать фактическую ширину col в chrome и IE?

1 ответ

Решение

Сделайте простой взлом для старого jQuery (col не имеет ширины в Chrome, но имеет первую ячейку с шириной)

<table width="100%" border="1">
  <colgroup style="background-color:#FF0000;">
  <col width="100px"></col>
  <col width="80px"></col><col id="id3"></col></colgroup>
  <tbody>
  <tr>
    <th id="id1">ISBN</th>
    <th id="id2">Title</th>
    <th>Price</th>
  </tr>
  <tr>
    <td>3476896</td>
    <td>My first HTML</td>
    <td>$53</td>
  </tr>
  <tr>
    <td>2489604</td>
    <td>My first CSS</td>
    <td>$47</td>
  </tr>
<tbody>
</table>

здесь - http://jsfiddle.net/YD5mM/2/

Другие вопросы по тегам