Разница в рендеринге в браузере между строгими / переходными DOCTYPE

Я столкнулся с "проблемой" некоторое время назад я так и не дошел до сути. Надеюсь, кто-нибудь сможет пролить на это свет. Что заставляет определенные браузеры (Chrome, Opera и Safari) по-разному отображать страницу, когда я меняю DOCTYPE со строгого на переходный. Я знаю, что основной причиной этого является запуск режима quirks, но как XHTML, так и CSS для обоих файлов проверяются в соответствии с валидатором w3c.

Я могу только предположить, что эти браузеры используют разные внутренние таблицы стилей для двух DOCTYPE, но понятия не имею, зачем они это сделали. Я просто надеялся, что кто-нибудь сможет подтвердить, почему это происходит.

Разница, которую можно увидеть, - это расстояние между нижней частью «изображения заголовка» и границей строки меню. В вышеупомянутых браузерах между ними нет разрыва при использовании переходного DOCTYPE, но есть при использовании strict (в IE и FF пробел присутствует на обоих). В конце концов я пришел к выводу, что добавление display: block к тегу img предотвращает появление пробелов во всех случаях (что и было моей целью).

переходный пример , строгий пример

5
задан Peter O'Callaghan 17 September 2010 в 14:01
поделиться