Ячейки таблицы IE7, сделанные CSS невидимыми, нельзя сделать видимыми при последующих изменениях класса (??)

Вот два тестовых файла:

http://gutfullofbeer.net/good-table.html

http://gutfullofbeer.net/bad-table.html

Разметка на этих двух страницах почти одинакова. Там есть таблица с двумя столбцами.<th> а также<td> элементы одного столбца (второго) имеют класс «мусор».

На «хорошей» странице, когда вы загрузите ее, вы увидите флажок снятый сверху. Если вы установите флажок, второй столбец должен исчезнуть. Если вы снимите флажок, второй столбец вернется. На «плохой» странице флажок начинает проверяться. Снятие отметки не имеет никакого эффекта в IE7, хотя оно работает в других браузерах, которые не обладают фундаментальным злом.

Флажок привязан к небольшой подпрограмме Javascript, которая просто добавляет или удаляет класс «компактный» из<table> тег. Есть таблица стилей, которая включает это:

table.compact th.junk, table.compact td.junk {
  display: none;
}

Так чтодолжен бывает то, что происходит на «хорошей» странице. Тем не менее, кажется, что в IE7 (может быть, 6 тоже), если элементы таблицыначать так что когдапервоначально если они оформлены так, что они невидимы, их никогда не увидят, независимо от последующих изменений в DOM, которые приведут в действие новые правила стиля и сделают их видимыми. (Похоже, это проблема с<table> части в частности; Я использую тот же механизм в другом месте с другими элементами, и они все работают нормально.)

Итак, вопрос в том, знает ли кто-нибудь какой-нибудь взлом, каким бы отвратительным он ни был, чтобы обойти это идиотское поведение. Очевидно, что я мог бы попытаться организовать IE7 для запуска своих представлений с соответствующим набором переключателей, чтобы ячейки таблицы были видны, но в моем случае это происходит вокруг таблицы, которая создается как ответ AJAX, и поэтому это будет большой беспорядок я бы предпочел избежать. (Таблица на самом деле тоже таблица; это отображение табличной информации, а не взлом макета.)

Я гуглил и ничего не нашел, что не должно удивлять, если учесть, сколько хитов вы получаете от поисков «Ошибка макета IE7».

Ответы на вопрос(2)

Ваш ответ на вопрос