PHP включает в себя пробел в верхней части страницы

У меня проблема на сайте, который я делаю. В верхней части моей страницы есть эта строка белого пространства. Я не могу понять, откуда он. Возможно, из-за лишних разрывов строк на моей странице благодаря php include() или, возможно, это просто некорректный css.

Related of "PHP включает в себя пробел в верхней части страницы"

Я понял! Должен признаться, это было очень странно.

Это была моя точная проблема, и его решение полностью исправить.

Проблема заключалась в том, что include() .

Когда вы сохраняете страницу как UTF-8, в начале файла включается специальная подпись, называемая знаком байта (или спецификацией), указывающая, что это файл UTF-8. Вы можете видеть только спецификации с текстовыми редакторами низкого уровня (например, редактировать DOS ). Вам нужно удалить эту подпись из включенного файла, чтобы избавиться от пробела в верхней части страницы.

Редактирование DOS

В Notepad ++ вы можете изменить кодировку файла на «UTF-8 без спецификации» в меню «Кодирование». Это исправляет проблему для меня.

  1. Открыть файл в Notepadd ++

  2. Из верхней строки: Encoding-> Encode в UTF8 без спецификации

  3. Сохранить файл

В Dreamweaver

Нажмите CTRL + J или перейдите в меню « Изменить» – « Параметры страницы» -> «Плитка / Кодировка» и снимите флажок « UNICODE BOM», если она была нажата.

Ну, вам не хватает DOCTYPE для стартеров … У вас также нет кодировки символов.

Кроме того, убедитесь, что если вы сохранили файлы как UTF-8, они не должны иметь спецификацию в начале. Также убедитесь, что вы не оставили никаких пустых строк (хотя пробелы, вероятно, игнорируются, в противном случае каждый макет, который я когда-либо писал, прерывался)

вы можете решить эту проблему, выполнив следующие …

основанный на том, что сказал scunliffe … вы можете избежать этого символа … пример

 $file = file_get_contents('header.php'); $file = substr($file, 3, strlen($file)); echo $file; 

поэтому, вы пропускаете эту ошибку …

С уважением

Важно: если у вас есть несколько php-страниц, как у меня на моем веб-сайте, с помощью utf-8, вам нужно убедиться, что вы изменили кодировку каждой отдельной страницы на «Кодировать в utf-8 без спецификации».

По какой-то причине после вашего тега тела перед первым div у вас есть какой-то фанковый персонаж … просто удалите их и снова отпустите, если необходимо. символ  точнее … (вы можете увидеть его в Firebug, если вы проверите HTML -код для страницы … но вы не можете увидеть его в источнике представления, потому что он отображается как пробел).

не связанный с проблемой выравнивания … у вас также есть тег закрытия </li> ошибкой после вашей ссылки входа / регистрации.

Да, есть дополнительные пробелы, которые были включены прежде всего.

Могу ли я рекомендовать использование буферизации вывода для вас? Вы получите тонкий контроль над тем, что подтолкнуло к клиенту.

После того, как вы объявите DOCTYPE, обязательно добавьте сброс CSS в первую строку вашего CSS-кода, чтобы сделать его согласованным во всех браузерах:

 *{margin:0; padding:0; } 

Рассматривая вывод вашего веб-сайта на firebug, я нашел небольшую проблему поверх html-рендеринга. просмотр в скриншоте. отчет о пожаротушении

Это может быть из-за отсутствия doctype в верхней части страницы. Добавьте следующий тип doctype вверху страницы и снова просмотрите вывод.

 <!doctype html> <html itemtype="http://schema.org/WebPage" xmlns="http://www.w3.org/1999/xhtml" xmlns:og='http://opengraphprotocol.org/schema/' xmlns:fb='http://www.facebook.com/2008/fbml'> 

Протестировано все предложения онлайн, решены с помощью блокнота, процедура:

  1. Скопировать все содержимое файла для включения, из php без <?
  2. Откройте «Блокнот» и введите <? затем вставить весь код
  3. наслаждаться

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

Эта проблема вызвана символом спецификации, который используется для указания кодовой страницы, а конечный – текстового файла. Когда вы включаете файл PHP, этот символ также будет включен. Хотя вы не увидите характер спецификации, но это может вызвать разрыв на вашей странице.

Мое решение здесь. Вам не нужно удалять этот символ из файлов. Что вам нужно сделать, так это:

 <!-- <?php include_once (dirname(__FILE__) . "/_include.php"); ?> --> 

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

Символ BOM создает эту проблему. Иногда это не создает такой визуальный характер, который можно увидеть. Просто проверьте настройки редактора файлов и установите «no BOM», чтобы предотвратить такую ​​пустую строку.

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

Чтобы избежать таких ситуаций, i). проверьте, создает ли редактор кода новый файл с спецификацией. Если это так, измените эту настройку. II). Откройте все файлы вашего кода и проверьте характер спецификации при запуске (

Попробуйте это, это лучшая идея, которую я знаю, приветствует

 <div style="position:absolute;"> <?php include("conn.php"); ?> </div> <!DOCTYPE html>