样式表不与Code Igniter一起使用

时间:2012-07-29 22:49:09

标签: php css codeigniter frameworks

我正在尝试使用CodeIgniter将样式表放入视图中,请记住我是CI的新手。

所以样式表似乎包含正确,我正在检查位置,但它似乎仍然没有改变...

这是我的观点:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

<title>newsletter</title>
<link rel="stylesheet" href="<?php echo base_url(); ?>application/css/style.css" media="screen" />
</head>

<body>
<label for="name"> HI TESTING STYLING & EMAILING</label>
<div id="newsletter_form">
<?php echo form_open('email/send'); ?>

<?php

$name_data = array(
    'name' => 'name',
    'id' => 'name',
    'value' => set_value('name')
);



?>

<p><label for="name">Name: </label> <?php echo form_input($name_data); ?></p>

<p><label for="email">Email Address: </label><input type="text" name="email" id="email" value="<?php echo set_value('email'); ?>">

    <p><?php echo form_submit('submit', 'Submit'); ?></p>
    <?php echo base_url(); ?>application/css/style.css
    <?php echo validation_errors('<p class="error">'); ?>

<?php echo form_close(); ?>
</div>
</body>
</html>

你可以看到我正在回应url只是为了确保它是正确的,虽然它被禁止..不确定这是否是标准的CI程序或如果这是原因..我正在我的localhost工作。

这是我的样式表......

label{
display: block;
background: #FFF;
}

.error{

 color: #373737;
}

#newsletter_form{
background: #000;
width: 100px;
}
input[type=submit]{
border: 1px solid #c62828;
background: #aa2929;
color: #e3e3e3;
padding: .5em;
cursor: pointer;    

}
 input[type=submit]:hover{
background: #9c2222;

}

谢谢!我很困惑,任何帮助表示赞赏:)

3 个答案:

答案 0 :(得分:1)

将css / js文件放在应用程序文件夹中并不是一个好习惯。将它放在根目录中名为“css”的单独文件夹中,并使用base_url('css/style.css');调用它。您的根文件夹应该如下所示

-Root
  -application
    (all of your CI files)
  -css
    -Style.css
  -js
    -script.js
    -plugins.js

CodeIgniter阻止Application / Css是好事,因为这意味着它正在保护应用程序文件夹中的原始文件:)

答案 1 :(得分:0)

As Branden mentioned above CI将阻止通过该文件夹中的.htaccess文件访问该css文件。我会把它放在另一个文件夹中,如他所说。我还会考虑将index.php文件移动到另一个文件夹(将其放在Web根目录之外),然后编辑index.php以反映更改。像这样:

Root
- application
- public
   index.php
- system

将您的网络资源保留在您喜欢的位置,但我倾向于将它们保存在公共文件夹中。

答案 2 :(得分:0)

你可以使用base_url(); CI中的方法。

实施例

CI APP Folder
-application
-system 
-css (supposed you have style.css inside in that folder named 'css')

您可以在这样的视图中使用

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

这可能也有效

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

要设置base_url()方法路径,可以在application / config / config.php中查看