2

PHP で start_session を使用しようとすると、カスケード スタイル シートの機能が無効になっているようです。私の html ページのレイアウトが乱れているように見えます。css に干渉しない start_session を使用する方法はありますか?

以下はコード スニペットです。

 <?php session_start(); ?>
 <!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 http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <link rel="stylesheet" type="text/css" href="mod_style.css" /> 
 </head>
4

4 に答える 4

1

PHP のセッションがスタイルシートの読み込みやその他の PHP セッションに関連しないコードに干渉した記憶はありません。CSS ファイルへのパスが正しいかどうかを確認しましたか?

ページのソース (通常、Windows のブラウザーでは CTRL + U) をすばやく開き、CSS ファイルへのリンクをたどることができます。404 エラー ページが表示された場合は、必ずパスを変更する必要があります。

パスが正しい場合 (PHP セッション行を削除した後にスタイルシートが読み込まれる場合など)、エラーは投稿したコードが原因ではありません。

于 2013-07-20T18:18:37.093 に答える
0

スタイル シートが firebug や chrome dev ツールなどの開発者ツールを介して実際に読み込まれていることを確認し、古い IE でテストしている場合。session_start 呼び出しの最後の改行が原因である可能性があります。非 doctype の最初の行は、これらのブラウザーをクワーク モードにスローし、スタイルが不安定になります。

これを排除するには、次のように改行を削除するだけです。

<?php session_start(); ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
于 2013-07-20T19:47:24.557 に答える
0

コード エディターの出力保存ファイルのエンコードを確認してください。たとえば、MS Notepad を使用してファイルを Unicode で保存した場合、ファイルの最初の行に特殊文字が含まれているため、エラーや session_start の誤動作が発生する可能性があります。

確認するには、ブラウザからページのソースを確認してください。

私が話しているのは、BOMなしでANSIとUTF-8としてファイルを保存することです

于 2013-07-20T18:37:24.837 に答える
-1

次のように、相対パスではなく style.css への完全なパスを指定します。

  <link rel="stylesheet" type="text/css" href="http://www.example.com/css/mod_style.css" /> 

これを試してみてください。これが役立つと確信しています。

于 2013-07-20T18:26:18.233 に答える