PHP を使用してヘッダーをインクルードしようとするたびにinclude
、トップ マージンが発生する理由がわかりません。Firebug を使用して確認したところ、上部に 22px のオフセット マージンがあると表示されています。誰かがこの問題を経験していますか? CSS のプロパティだと思います: top: 22px. しかし、h1 style="top: 0px; margin-top: 0px;" と書いても何も変わりません。永遠に解けないphp-CSSの謎だと思います。
編集: 上マージンのオフセットなどを取り除く唯一の方法は、H1: top: 0px; に次のプロパティを追加することです。位置: 絶対;
それらのプロパティは、将来さらに多くの問題を引き起こしますか?
このトップマージンオフセットの問題を解決するより良い方法はありますか?
edit2: エンコーディングに問題があると思います。インクルード ファイル (header.html) とインデックス ファイルのエンコーディングに競合はありますか?
私のインデックスは次のようになります。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Untitled 1</title>
<link rel="stylesheet" type="text/css" href="style2.css" />
</head>
<body>
<div id="page-wrap">
<?php include_once("header2.html"); ?>
</div>
</body>
</html>
この CSS では:
* {
padding: 0px;
margin: 0px;
}
私のheader.html (含まれているもの):
<h1>Header 2</h1>
そして、それが出力です:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Untitled 1</title>
<link rel="stylesheet" type="text/css" href="style2.css" />
</head>
<body>
<div id="page-wrap">
<h1>Header 2</h1> </div>
</body>
</html>
- とてもシンプルなので、(すべてのブラウザで)トップマージンがどこから来ているのか本当にわかりません。
- PHPインクルードを使用した場合にのみ発生します。
- ソースコードは、php インクルードを使用しない場合と同じように見えます。