Firefox 4 и раскладка таблицы: исправлено - PullRequest
10 голосов
/ 18 апреля 2011

У меня есть проблема, которая, кажется, была введена между Firefox 3 и 4. По сути, это связано с table-layout: fixed.

У меня есть прокручиваемая таблица, которая использует два DIV, один для заголовка и одиндля тела (к сожалению, это единственный вариант, который работал для меня).

Таблица тела выглядит примерно так (обратите внимание, что все это сгенерировано с помощью JavaScript, это часть приложения GWT):

<table style="table-layout: fixed;">
    <colgroup>
        <col width="61" />
        <col width="57" />
    </colgroup>
    <tbody>
        <!-- data -->
    </tbody>
</table>

(кстати, страница объявлена ​​как HTML 4.01 Transitional)

Кажется, что в Firefox 3 ширина столбцов соблюдается.Тем не менее, в Firefox 4 кажется, что иногда игнорируется ширина столбцов (сложно точно определить, но обычно, когда таблица начинает становиться достаточно маленькой, чтобы Firefox не мог изменить размер).Если я проверяю ширину столбцов в Firefox, они обычно имеют мало отношения к ширине, указанной в HTML.

Мне просто интересно, может ли кто-нибудь пролить свет на то, почему это может происходить?

Ответы [ 3 ]

1 голос
/ 19 октября 2011

Прежде всего, убедитесь, что ваша разметка проверена.Вы используете стиль "/>" SHORTTAG, который недопустим в HTML 4.01 (эти замыкания действительны только в XHTML).

Я не знаю, приведет ли неожиданный ярлык к браузеру в режим «Причуд» (проверьте «Информация о странице»?)?Причудливый режим - это смерть для устранения неполадок.

Если в вашем FireFox установлено расширение для веб-разработчика, я бы осмотрел таблицу и все, что внутри нее ... возможно, что-то толкает стены колонны.

Я не могу предположить проблему ... недостаточно данных.Было бы полезно, если вы сохраните полный HTML-код из браузера (затем аккуратно удалите ненужные или конфиденциальные данные), а затем убедитесь, что проблема все еще возникает в более простом сценарии использования.Если это так, опубликуйте этот вариант использования где-нибудь в Интернете, и люди смогут его проверить.

Кроме коротких тегов, вы не обнаружили, что делаете что-то не так.Но, как я и предположил, внутри тела таблицы что-то происходит ...

0 голосов
/ 08 октября 2011

Почему бы вам не использовать это:

display:table;
posiiton:fixed;

А для тега col используйте CSS:

<col style="width:61px;" />
<col style="width:57px;" />
0 голосов
/ 28 апреля 2011

Вам может понадобиться px после числа в FF 4. Проверьте это:

    <col width="61px" />
    <col width="57px" />
...