PHP 代码点火器 CSS

发布于 2024-11-18 05:32:50 字数 257 浏览 0 评论 0原文

我从网站下载了一个 html 主题,并尝试将其放入我的 codeigniter 项目中。我将下载的主题文件夹中的 .html 文件复制并粘贴到我的视图“index_v.php”中。我还将css文件夹直接复制到views文件夹中。 index_v.php 文件像这样调用 .css 文件,

<link rel="stylesheet" href="style.css"> 

但是当我加载页面时,它不会加载 .css 文件。

I downloaded a html theme from a website and i'm trying to put it in my codeigniter project. I copy and pasted the .html file from the downloaded theme folder into my view "index_v.php". I also copied the css folder directly into the views folder. The index_v.php file calls the .css file like this

<link rel="stylesheet" href="style.css"> 

Yet when I load the page it doesn't load the .css file.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

情绪少女 2024-11-25 05:32:50

您可能遇到了相对路径的问题。如果您的网址是 /users/welcome/,它会查找文件 /users/welcome/style.css

解决方案:

  • 使用完整网址:

  • 使用 CI 的 link_tag() 它将把你的基本 url 添加到路径

  • 使用绝对路径:

如果您无法直接访问该文件,请检查您的 .htaccess 文件(如果您正在使用它) 。大多数 CI 安装都使用这样的规则:

RewriteCond $1 !^(index\.php|public|robots\.txt)
RewriteRule ^(.*)$ /index.php?/$1 [L] 

通过此规则,允许直接访问两个文件和一个目录(index.php、名为 public 的目录、robots.txt)。其余部分通过 index.php 路由。

最好为所有静态文件(图像、CSS 等)创建一个目录,并将该目录名称添加到排除列表中。将这些文件保留在根目录中只会导致大量混乱。

You're probably running into an issue with relative paths. If your URL is /users/welcome/, it's looking for the file /users/welcome/style.css

Solutions:

  • Use a full URL: <link rel="stylesheet" href="http://example.com/style.css">

  • Use CI's link_tag() which will prepend your base url to the path

  • Use an absolute path: <link rel="stylesheet" href="/style.css">

If you are unable to access the file directly, check your .htaccess file if you are using it. Most CI installations use something like this:

RewriteCond $1 !^(index\.php|public|robots\.txt)
RewriteRule ^(.*)$ /index.php?/$1 [L] 

With this rule, there are two files and one directory that are allowed direct access (index.php, a directory named public, robots.txt). The rest is routed through index.php.

It's best to create a directory for all your static files (images, css etc.) and add this directory name to the exclusion list. Keeping those files in the directory root is just going to cause tons of clutter.

灯角 2024-11-25 05:32:50

而不是这个

<link rel="stylesheet" href="style.css">

尝试这个:

<link rel="stylesheet" href="<?php echo base_url();?>"> 

或者如果你的 css 位于一个名为 css 的目录中:

<link rel="stylesheet" href="<?php echo base_url();?>css/style.css"> 

你的 Javascript 将以同样的方式工作

Instead of this

<link rel="stylesheet" href="style.css">

Try this:

<link rel="stylesheet" href="<?php echo base_url();?>"> 

Or if you have your css in a directory called css:

<link rel="stylesheet" href="<?php echo base_url();?>css/style.css"> 

Your Javascript will work the same way

灰色世界里的红玫瑰 2024-11-25 05:32:50

你必须将该 CSS 文件放入用于提供静态内容的文件夹中(我有一段时间没有使用 CI.. 可能是 static/ ?检查你的 (apache) 重写规则...) 。然后更改 href 使其指向该目录中的文件。

You have to put that CSS file to the folder which you use to serve static content (I haven't used CI for a while.. probably static/ ? check your (apache) rewriterule... ). Then change the href so it's points to the file in that dir.

等待圉鍢 2024-11-25 05:32:50

使用 firebug 并查看浏览器尝试解析 CSS 的 URL 是什么。我敢打赌您会发现它收到了 404。

尝试在包含文件中的 CSS 文件之前附加 /Application ,即

<link rel="stylesheet" href="application/style.css"> 

问题在于您的视图运行的上下文。

希望有帮助

Use firebug and see what the URL is that the browser is trying to resolve the CSS at. I bet you will find that it is getting a 404.

Try appending /Application before the CSS file in your include i.e

<link rel="stylesheet" href="application/style.css"> 

The problem is the context in which your view is running.

Hope that helps

蓝戈者 2024-11-25 05:32:50

在 codeigniter 中,css 等内容的路径是相对于您的 webroot index.php 文件的。

我建议您将 css 放在 webroot 中的 asset/css 或 /css 文件夹中,然后您的视图的链接将是

<link rel="stylesheet" href="assets/css/style.css">

例如。

In codeigniter, the paths for content like css is relative to your webroot index.php file.

I advise you to place the css in an assets/css or /css folder in the webroot then your view's link will be

<link rel="stylesheet" href="assets/css/style.css">

for example.

软甜啾 2024-11-25 05:32:50

结合上面的一些答案,这就是我在 CodeIgniter 安装中加载 Blueprint.css 所做的事情:

  1. 在安装的根目录中创建一个名为“static”的文件夹(与“application”、“system”和“index.php”)。
  2. 创建一个名为“css”的子文件夹 (/static/css)
  3. 将蓝图文件夹复制到其中 (/static/css/blueprint/)
  4. 打开 .htaccess。改变这个...

    RewriteCond $1 !^(index\.php|images|robots\.txt)
    

    ...对此:

    RewriteCond $1 !^(index\.php|images|static|robots\.txt)
    
  5. 在您的头文件(例如/application/views/template/header.php)中,使您的链接与站点相关:

    
    
    
    
    

请注意,此方法适用于任何静态内容(例如 Prototype.js、jQuery、常见图像等)。只需使您的 href 链接与站点相关,它就应该可以工作。

“static”作为文件夹名称并没有什么特别之处。这只是我随意选择的名字。

Combining some of the answers above, this is what I did to get Blueprint.css to load in my CodeIgniter installation:

  1. Create a folder called "static" in the root of your installation (a peer to "application", "system", and "index.php").
  2. Create a subfolder called "css" (/static/css)
  3. Copy the blueprint folder in there (/static/css/blueprint/)
  4. Open .htaccess. Change this...

    RewriteCond $1 !^(index\.php|images|robots\.txt)
    

    ... to this:

    RewriteCond $1 !^(index\.php|images|static|robots\.txt)
    
  5. In your header file (e.g. /application/views/template/header.php), make your links site-relative:

    <!-- Framework CSS -->
    <link rel="stylesheet" href="/static/css/blueprint/screen.css" type="text/css" media="screen, projection">
    <link rel="stylesheet" href="/static/css/blueprint/print.css" type="text/css" media="print">
    <!--[if lt IE 8]><link rel="stylesheet" href="/static/css/blueprint/ie.css" type="text/css" media="screen, projection"><![endif]-->
    

Note that this method works for any static content (e.g. Prototype.js, jQuery, common images, etc.). Just make your href links site-relative and it should work.

And there's nothing special about "static" as a folder name. It's just the name I chose arbitrarily.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文