【问题标题】:PHP CSS external file not workingPHP CSS外部文件不起作用
【发布时间】:2011-03-11 10:02:09
【问题描述】:

下图(最底部)是我正在构建的网站的文件结构,我无法正确连接 CSS 文件。

在目录Public/Admin/ 中有一个文件login.php。在 login.php 中,我使用以下函数调用...

获取 login.php 页面的标题。

它在(Includes/functions.php文件)中调用的函数就是这个

function include_layout_template($template=""){
include(SITE_ROOT.DS.'public'.DS.'layouts'.DS.$template);
}

它从 LAYOUT 目录中获取 admin_header.php 文件。我知道 admin_header.php 正在使用此函数调用正确加载到 login.php 文件中,因为当我加载 login.php 时会出现 admin_header.php 文件的 html。但是,admin_header.php 文件也有指向 StyleSheets 目录中 main.css 文件的链接

<link href="../stylesheets/main.css" media="al" rel="stylesheet" type="text/css"/>

尽管如前所述,admin_header.php 已被合并到 public/Admin/login.php 中,但样式表无法正常工作。

看看下面的目录结构,是不是我的样式表链接有问题?

【问题讨论】:

  • 使用 Chrome 或 Firefox 查看文档源代码中样式表的链接。那里的链接是可点击的。如果你得到一个 404 作为回报,它就坏了
  • @pekka 我该怎么做?你能解释一下吗?谢谢..我是新手
  • 使用浏览器的“查看源代码”功能,两种浏览器的快捷键都应该是Ctrl+U(由于国际布局差异,不能100%确定。)

标签: php css


【解决方案1】:

问题不是文件位置的相对性。你有media="al",而它应该是media="all"。这应该可以解决它。

【讨论】:

    【解决方案2】:

    样式表的 URL 与生成的 HTML 文件相关,而不是 PHP 文件。我通常通过使用绝对 URL 来解决这个问题,这意味着将站点的基本 URL 存储在某个地方(可能是配置文件),然后像这样包含所有 JS/CSS 文件:

    <?php echo BASEURL ?>/css/style.css
    

    【讨论】:

      【解决方案3】:

      您好,您在一个 ../ 之后位于您的公用文件夹中,并且您的包含文件夹处于同一级别。你需要再上一步../../

      【讨论】:

        【解决方案4】:

        简单的技巧是,如果您通过 SAVE AS 选项重命名 css 文件并为其创建链接。一定会成功的。

        【讨论】:

          猜你喜欢
          • 2015-04-15
          • 2016-05-08
          • 2013-08-21
          • 1970-01-01
          • 1970-01-01
          • 2022-06-11
          • 1970-01-01
          • 2016-07-22
          • 2015-10-17
          相关资源
          最近更新 更多