1

次のような単純なページがあります。

...
<div><?php include 'somefile.php' ?></div>
...

'somefile.php'-ファイルが含まれています<p>Lorium ipsum...</p>

ブラウザはブロックの先頭にスペースを追加しますか? 画像を見てください: http://s44.radikal.ru/i104/1209/95/87e6c2438700.jpg

そして、このテストページhttp://new.arsltd.ru/test.php

4

4 に答える 4

3

ほとんどsomefile.phpの場合、PHP 開始タグの前にスペースまたはその他の印刷できない文字 (BOM など) が含まれています。

更新:実際、ファイルは UTF-8 BOM (バイトEF BB BF) で始まります。テキスト エディタを使用して、BOM なしで保存します。確認として、ファイル サイズが 3 バイト減少することがわかります。

于 2012-09-20T13:12:01.330 に答える
3

要素の 1 つにパディングまたはマージン スタイル ディレクティブがある可能性が最も高いです。ブラウザーは、HTML を解析するときに空白を無視します (そうあるべきです)。

HTML ソースに表示されるスペースは、たとえば、含まれている .php ファイルの先頭にある改行が原因である可能性があります (注: これはコードのレンダリング方法には影響しません)。

于 2012-09-20T13:12:18.720 に答える
1

somefile.php段落に折り返されたテキストが含まれており<p>、その段落にマージンまたはパディングがあることが最も確実です。

あなたの問題はtest.php、目に見えないユニコード文字から始まります。

<div><p> // between <div> and <p> there is an unicode character
于 2012-09-20T13:13:06.240 に答える
0

「somefile.php」の中身は?Notepad++ または他の IDE/テキスト エディターを使用して、そのファイルのエンコーディングを BOM なしの UTF-8 に変更してみてください。

于 2012-09-20T13:14:00.900 に答える