Откуда берутся пробелы перед DOCTYPE


Начинающие веб-разрабочтики часто сталкиваются с вопросом: откуда берутся пробелы в начале HTML документа или в конце,  почему перед DOCTYPE появилась пустая строчка/пробелы, как избавиться от этих строчек/пробелов?

Данная проблема часто влияет на верстку сайта в целом и она трудноотслеживаемая.

На то есть несколько причин:

1) Возможно в каком-то из подключаемых файлах, после закрывающего PHP тега "?>" остались эти самые пробелы или переносы строк.

Решение простое. Можно просто удалить закрывающие PHP теги "?>", но только в том случае что дальше, в этом документе нет никакого HTML кода. На работу программы это никак не повлияет.

2) Обязательно проверьте кодировку ВСЕХ файлов, на которых работает сайт.

Лучше всего это делать в текстовом редакторе Notepad++. Вам необходимо открыть им файл, и в пункте меню "Кодировки" выбрать вариант UTF-8 (без BOM). Именно БЕЗ BOM.

Если в этот момент в файле собьется текст всей кириллицы, то сделать лучше так:

Ctrl+A > Ctrl+C > Меняем кодировку (без BOM) > Ctrl+A > Ctrl+V

Таким образом вы и исправите кодировку, и исправите испортившуюся кириллицу.

P.S. Если ваш сайт работает НЕ на UTF-8, например на CP1251, советую вам исправить его под UTF-8. Это позволит избежать вам кучу проблем. Например при отправке почты, AJAX запросов и вообще при выводе на экран кириллицы.

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

 


Тэги:

Комментарии: 0

Прокомментировать »

 
 
 

Прокомментировать

 
 
Сообщение *
 
Проверочный код *
 
 
 
Яндекс.Метрика