IE теряет стили CSS после того, как строки таблицы добавлены с помощью JavaScript - PullRequest
0 голосов
/ 02 июня 2009

У меня есть проблема, когда я делаю ajax выборку некоторых строк таблицы, которые я использую для замены тела таблицы.

Проблема в том, что иногда IE (6/7) решает забыть обо всех стилях страницы после такого добавления. (то есть, он возвращается к использованию стилей в css-заголовках вверху страницы, но не к стилям, определенным на самой странице)

Мне удалось найти других людей , описывающих ту же проблему, но без решения. кто-нибудь сталкивался с этим раньше и смог решить?

бонусных баллов, если решение не включало вывод всех css на странице.

1 Ответ

1 голос
/ 02 июня 2009

Что ж, если вы имеете в виду, что у вас есть теги стиля в теле, их не должно быть на самом деле, поэтому неудивительно, что некоторые браузеры могут плохо на это реагировать.

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

Убедитесь, что код, который вы вводите на странице, действителен. Если вы введете неверный HTML-код, это может заставить браузер изменить режим рендеринга. Это, в свою очередь, потребует полного пересмотра кода, что может быть возможным объяснением того, почему он отбрасывает встроенные теги стиля.

Вместо таблицы вы можете попробовать использовать теги div, которые вы организуете, чтобы сформировать макет, который вы хотите. Замена некоторых элементов div может вызвать меньшую путаницу в браузере, чем замена таблицы или части таблицы, что может сделать страницу более стабильной.

Если ничего не получится, я не вижу другого решения, кроме как сделать страницу более надежной, не добавляя теги стиля в тело. Это то, что вы должны учитывать в конечном итоге.

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