Кепыч: Блог

Главные вкладки

Кривой вывод <!DOCTYPE>

11 марта 2010 в 20:55

Добрый день. Помогите решить проблему начинающему программисту-любителю.

Для начала немного вводной информации, что бы было проще понять проблему. Я разрабатываю модули для сайта, который использует в качестве CMS Drupal. До сих пор проблем не было, но...

Встала задача: написать модуль, имеющий внутри себя блок с атрибутом position:fixed. Все получилось отлично для браузеров FF, Chrome и Opera, но в ИЕ стал вылезать следующий косяк - данное свойство браузером сбрасывается в relative.

Путем анализа было выяснено, что ИЕ получает страничку, код которой при просмотре в hex-редакторе имеет следующий вид:


00000000:ef bb bf ef bb bf ef bb bf ef bb bf ef bb bf ef    п»їп»їп»їп»їп»їп
00000010:bb bf ef bb bf ef bb bf ef bb bf ef bb bf ef bb    »їп»їп»їп»їп»їп»
00000020:bf ef bb bf ef bb bf ef bb bf ef bb bf ef bb bf    їп»їп»їп»їп»їп»ї
00000030:ef bb bf ef bb bf ef bb bf ef bb bf ef bb bf ef    п»їп»їп»їп»їп»їп
00000040:bb bf ef bb bf ef bb bf ef bb bf ef bb bf ef bb    »їп»їп»їп»їп»їп»
00000050:bf ї    

Далее уже идет DOCTYPE

Если из локальной копии страницы удалить эти символы, то блок выравнивается как положено.
Насколько я понял, ИЕ не может корректно обработать DOCTYPE из-за этих символов и сбрасывает свойство position.