php 中的外部样式表 (css)

External stylesheet (css) in php

我已经在 Whosebug 上浏览了 4-5 post,但没有解决我的问题。

我有一个 php 文件,我想对其他 HTML 文件使用 css 样式表。

现在看起来像这样:

 <div style="height: 600px;">
      <?php
       echo "<link rel='stylesheet' type='text/css' href='stylesheet.css' media='all'/>";
       session_start();
       $admin = $_SESSION['admin'];
       $author = $_SESSION['author'];
       ?>
       <?php if ($admin == true AND $author == true) { ?>
           <p id="confirmationText"><?echo "Thank you for your message! <br>You should have received a confirmation email. We will contact you soon."; ?></p>
       <?php } ?>
</div>

它不起作用; p id="confirmationText" 文本没有格式化。有趣的是,当我在没有 apache 服务器的情况下在本地打开文件时,它将得到 HTML 格式。

怎么办?

你能在浏览器中打开样式表吗?

此外,为什么您要在 div 中而不是在头部回应样式表?

  • CSS 样式 link 有时如果不在 <head> ... </head> 区域则无法正常工作。 最佳实践 是只声明 echo 语句 那里。
  • 尝试在浏览器中打开您的网页,然后点击“检查” 在样式表 linked 的地方检查 element',然后看看是否可以在那里发现任何问题。通常,浏览器只会以奇怪的方式呈现事物。它可以为您提供有关错误的线索。
  • 您为什么 link 在 session_start 命令之前 设置样式表?也许这可能只是导致输出缓冲区错误。尝试将 link 放在 PHP 代码的末尾。

老实说,有时甚至 "best practice" 和 "cleanup" 修复代码的方法都行不通。您可以使用一点 css hack。这是一种不好的做法,而且有点贬值,但我多年来一直在编写代码,这只会让生活变得更加轻松:而不是 link 在外部构建样式表....直接嵌入样式。

将这段代码添加到您的文件中:

<style>
<!-- change the path to the correct one, though. I have no clue where your file is, in the filesystem, I'm just guessing, here -->
<?php include($_SERVER['DOCUMENT_ROOT'] . "/stylesheet.css"); ?> 
</style>