【问题标题】:Perl CGI script with css带有 css 的 Perl CGI 脚本
【发布时间】:2011-02-14 18:29:05
【问题描述】:

我正在为我的 CGI Web 表单使用外部 css,但我无法将 .css 带到页面。是否有某种方式需要调用外部 css。我试过了:

<link rel="stylesheet" type="text/css" href="../styles/archiveRequest.css" media="screen" />

这一直没有工作。我尝试将 css 移动到与 .cgi 相同的文件夹中,但仍然没有结果。

【问题讨论】:

  • 该声明看起来一切正常,我想您只是将它指向错误的目录。
  • 如下所述,如果styles在顶层,就丢掉“..”
  • 目录不是问题。

标签: css perl cgi


【解决方案1】:

href 属性需要与您在浏览器中查看的页面相关。例如,如果您的 URL 是 http://www.example.com/cgi-bin/mypage.cgi,那么使用上面的代码,您的 CSS 文件需要在浏览器 http://www.example.com/styles/archiveRequest.css 中可见。尝试使用直接 URL 直接在浏览器中加载它。还请查看您的服务器日志,您可能会发现 404 错误显示文件尝试从何处加载。

【讨论】:

  • 我能够在浏览器中加载 /styles/archiveRequest.css 页面。
  • @James:还有其他问题。在 Firebug 或 Chrome 的开发者模式下查看您的请求。查看您的服务器日志。这些将阐明您的问题。
【解决方案2】:

如果您“能够加载 /styles/archiveRequest.css”,那么也使用“/styles/archiveRequest.css”作为 href。

【讨论】:

  • 这正是我的问题所在。我确实将它用作我的href,但它仍然不起作用。
  • @james: 如果你用它作为 URL?
【解决方案3】:

我知道很久以前有人问过这个问题,但我今天遇到了同样的问题,花了几个小时寻找答案。这对我有用:

如果我的 cgi 脚本是 /var/cgi-bin/test.cgi,将我的 style.css 文件放在同一目录中不起作用。显然,这使它被视为脚本,但事实并非如此。我将我的样式文件移动到 /var/www/styles/style.css 并使其不可执行(但可读)。

在浏览器中,我可以在 localhost/styles/style.css 看到它,所以在我的 cgi 脚本中我将其引用为:

我的 $stylesheet = "/styles/style.css"; start_html(-style=>{'src'=>$stylesheet}), ....

希望这对其他人有用。

(帮助我的答案在这里找到:http://forums.devnetwork.net/viewtopic.php?f=1&t=113842

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-15
    • 1970-01-01
    • 2012-03-10
    • 1970-01-01
    • 2012-01-19
    • 2014-12-19
    • 1970-01-01
    相关资源
    最近更新 更多