Я столкнулся с "проблемой" некоторое время назад я так и не дошел до сути. Надеюсь, кто-нибудь сможет пролить на это свет. Что заставляет определенные браузеры (Chrome, Opera и Safari) по-разному отображать страницу, когда я меняю DOCTYPE со строгого на переходный. Я знаю, что основной причиной этого является запуск режима quirks, но как XHTML, так и CSS для обоих файлов проверяются в соответствии с валидатором w3c.
Я могу только предположить, что эти браузеры используют разные внутренние таблицы стилей для двух DOCTYPE, но понятия не имею, зачем они это сделали. Я просто надеялся, что кто-нибудь сможет подтвердить, почему это происходит.
Разница, которую можно увидеть, - это расстояние между нижней частью «изображения заголовка» и границей строки меню. В вышеупомянутых браузерах между ними нет разрыва при использовании переходного DOCTYPE, но есть при использовании strict (в IE и FF пробел присутствует на обоих). В конце концов я пришел к выводу, что добавление display: block
к тегу img предотвращает появление пробелов во всех случаях (что и было моей целью).