Обновление: я зарегистрировал отчет об ошибке с Google - http://code.google.com/p/android/issues/detail?id=22447&can=4&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars
Обновление: @benni_mac_b указывает, что проблема исчезает, если вы отключите страницы автоматической установки. Это "решение" работает на 2,1 и 2,2 - оказывается, что на телефоне 2,3, на котором я тестировал, была отключена автоматическая подгонка, и, когда она активирована, таблица снова разрывается.
Предположим, теперь я ищу способ сказать Android не автоподгонку таблицы (и переопределить настройку браузера). Не нравится мои шансы, судя по моим поисковым словам Google до сих пор.
Я столкнулся с необычной проблемой с веб-браузером Android и связанными столбцами - например, если у меня есть эта структура:
<table class="amhtable">
<col width="16.72%" />
<col width="16.62%" />
<col width="16%" />
<col width="16%" />
<col width="34.67%" />
<thead>
<tr class="heading">
<td>Modifying circumstance</td>
<td>Common pathogens</td>
<td>First choice</td>
<td>Alternative</td>
<td>Additional information</td>
</tr>
</thead>
<tr class="heading2">
<td colspan="5" width="100%">SECTION TITLE</td>
</tr>
<tr class="body">
<td>column 1</td>
<td>column 2</td>
<td>column 3</td>
<td>column 4</td>
<td>column 5</td>
</tr>
</table>
Скрученная строка будет уменьшаться в соответствии с размером экрана, даже если сама таблица еще шире. Это означает, что в большинстве случаев фон в строке заголовка2 отсутствует в большинстве случаев, что делает его довольно странным.
Это не происходит на iPhone или на любом настольном браузере (Chrome, IE, FF, Safari), о котором мы знаем - только на Android (несколько устройств и версий).
CSS:
.amhtable {
border-width:1px;
border-style:solid;
border-color:#000000;
border-collapse: collapse;
border-spacing: 0;
padding: 5px;
font-weight: normal;
color: #000000;
}
.amhtable td {
border-width:1px;
border-style:solid;
border-color:black;
padding: 3px;
}
.amhtable th {
border-width:1px;
border-style:solid;
border-color:#777777;
background-color:#0084D6;
}
.amhtable .heading {
border-width:1px;
border-style:solid;
border-color:#000000;
background-color:#567ac4;
font-weight: bold;
font-style: italic;
font-family: Verdana, Arial, Helvetica, DejaVu Sans, Bitstream Vera Sans, sans-serif;
}
.amhtable .heading2 {
border-width:1px;
border-style:solid;
border-color:#000000;
background-color:#82a3e7;
font-weight: bold;
font-family: Verdana, Arial, Helvetica, DejaVu Sans, Bitstream Vera Sans, sans-serif;
}
До сих пор я пробовал следующее:
- Удаление элементов
<col>
- Добавление шестой колонки и пустых элементов
<td>
в каждую строку - Удаление стиля сглаживания границ (после чтения Браузеры Webkit Rendering for Table В зависимости от colspan)
- Установка ширины развернутого столбца на 100% (вместе с изменениями выше)
- Установка фиксированной ширины в таблице и установка развернутого столбца на 100%
- Замените ширину столбцов на основе% с фиксированными ширинами пикселей
- Установите положение относительно относительной ячейки (а затем строки) и установите влево и вправо на 0.
- Установите положение относительно строки с левой как 0, а ширина - 1000 пикселей
- Обернул таблицу в 100% ширину
<div>
Одна вещь, которую мы заметили вчера, состоит в том, что таблица должна иметь черную границу 1px, но есть пробел на устройствах 2.1/2.2, которые мы тестируем, где строка не заканчивается. На самом деле это действительно проблема рендеринга на этих устройствах.