我有一个非常简单的html页面:
<!DOCTYPE html>
<html>
<head>
<title>Title</title>
<link rel="stylesheet" type="text/css" href="http://127.0.0.1/assets/css/main.css" />
</head>
<body>
<div>hello world!</div>
<br/>
<div id='global_footer'>copyright 2013</div>
</body>
</html>
main.css是:
body { font-family: arial; background-color: rgb(185,179,175); }
通过点击浏览器源代码页中的链接确保链接正常,浏览器确实正确加载了css源代码。
但是,CSS不适用于该页面。如果我删除DOCTYPE行,完全相同的代码工作正常。真的不知道是什么原因。
有关更多信息,我正在使用CodeIgniter。 assets文件夹位于我的文档根目录下,与应用程序文件夹同级。我已经将css添加到root的.htaccess中以确保它正确加载css文件而不添加index.php。我认为CI相关的设置很好,浏览器可以找到css文件,否则它不应该没有DOCTYPE线。
谢谢。
---- ---- EDIT
伙计们,谢谢你们测试了html和css。我测试了,他们自己工作得很好。我认为问题来自CI。我的文档根目录中有资源文件夹,在子文件夹和main.css文件中。不知道为什么这个html和css在CI下不起作用。我的控制器:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller {
/**
* Index Page for this controller.
*
* Maps to the following URL
* http://example.com/index.php/welcome
* - or -
* http://example.com/index.php/welcome/index
* - or -
* Since this controller is set as the default controller in
* config/routes.php, it's displayed at http://example.com/
*
* So any other public methods not prefixed with an underscore will
* map to /index.php/welcome/<method_name>
* @see http://codeigniter.com/user_guide/general/urls.html
*/
public function index()
{
$this->load->helper(array('html','url'));
$this->load->view('main');
}
}
/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */
谢谢。
答案 0 :(得分:2)
感谢您提供的所有信息/帮助。我刚刚发现了这个问题:
CSS外部文件仅在正确的MIME类型下工作。我以前的MIME类型是text / plain。我没有在我的.htaccess中配置任何内容,它在我的CI中以某种方式设置为此。要解决此问题,我需要将MIME类型更改为text / css。使用Apache,我添加
AddType text/css .css
到我的.htaccess。现在它有效。
这个问题现在可以关闭了。谢谢大家的帮助。