CodeIgniter - загрузка CSS

Я занимаюсь разработкой пользовательского API для веб-решения и использую шаблон проектирования MVC. У меня есть папка модулей, так что я могу менять и вставлять модули, а также работать с разделами, не нарушая работу проверенного кода. Моя единственная проблема сейчас заключается в том, что я хочу загружать CSS в любое место, и мое приложение правильно импортирует файл css в тег head. Я знаю, что CodeIgniter делает это, но я не уверен, как это сделать.

Используя PHP, как мне загрузить файл CSS в любом месте, а затем правильно импортировать код в теги head, как это делает CodeIgniter?

Заранее спасибо.

Ответы на вопрос(8)

что вы не перенаправляете URL в файле .htaccess, разрешите css

.htaccess файл

RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

Также вот что я добавил в свой шаблон заголовка

$this->load->helper("url");
echo link_tag(base_url().'css/styles.css');

Используйте абсолют ...

<link rel="stylesheet" type="text/css" href="http://example.com/style/css">

... или URI относительно корня.

<link rel="stylesheet" type="text/css" href="/style/css">

сделай эт

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

но сначала создайте папку css в корневом каталоге и поместите туда style.css.

но я сделаю все возможное, чтобы помочь. Вам просто интересно, как включить CSS-файл в ваши представления? Если это так, просто используйте следующее:

<style> @import url('/css/styles.css'); </style>

Если ваша папка CSS находится в корне вашего проекта CodeIgniter, вы можете сделать что-то вроде этого, используя функцию base_url () CodeIgniter:

<style> @import url('<?=base_url()?>/css/styles.css'); </style>

Это гарантирует, что ваши страницы будут переносимыми и имеют правильный абсолютный URL. Надеюсь это поможет! Если нет, попробуйте немного конкретизировать свой вопро

 Sam13 мая 2013 г., 10:54
Это отлично сработало: <style> @import url (<? = Base_url ('public / css / style.css')?>); </ style> мои ссылки типа <link rel = "stylesheet" type = "text / css" media = "screen" src = '<? = base_url (' public / css / style.css ')?>' /> work когда вы просматриваете исходный код, они ссылаются на правильный файл, но не применяют этот CSS, мне действительно нужно просмотреть некоторые журналы, но мой общий хостинг не позволит мне:
Решение Вопроса

ения внутри других представлений.

Так что в этом случае я рекомендую вам создать один вид заголовка, где Вы загружаете все файлы CSS и JS

пример

<html>
<head>
    <meta http-equiv="content-type" content="text/html;charset=UTF-8">
    <link rel="stylesheet" href="<?php echo base_url();?>css/moorainbow.css" type="text/css" media="screen"/>
    </head>
    <body>

И назови это как:

$this->load->view('header');
$this->load->view('view1');
$this->load->view('view2');

Таким образом, вы можете управлять файлами (css + js + и т. Д.), Которые вы загружаете в один файл.

Regrads,
Педро
@ pcamacho

 Optimus Prime08 июн. 2013 г., 13:43
Ух ты ... Ух ты ... это здорово.
 Praditha22 дек. 2011 г., 09:13
В любом случае можно загрузить представление 'header' / 'footer' без вызова$this->load->view('header') или$this->load->view('footer')? <br> может быть, это похоже на шаблон ...
 Alex W02 апр. 2014 г., 22:36
Я хотел бы использоватьbase_url('css/moorainbow.css'); вместо этого, потому что в противном случае вы можете получить дублированные части вашего URL.
 sys_debug18 сент. 2012 г., 10:28
remarkable! это был ответ на невозможность найти CSS при загрузке страницы PHP
 andyk10 июл. 2009 г., 08:59
base_url () - это путь.

что и я, в вашем файле просмотра сделайте следующе

<link rel="stylesheet" href="{pathToApp}/styles/main.css" type="text/css" media="screen" />

(после создания папки стилей в каталоге приложения), затем в вашем контроллере передайте это:

$path = '../system/application';

в массив и отправьте массив в качестве второго параметра, если вы используете load-> view для загрузки своего представления, вам нужно изменить {pathToApp} на $ array ['path'] (измените $ array на то, что вы назвали) , Если вы используете встроенную систему шаблонов CodeIgniter, то все готово. По крайней мере, таким образом вам не нужно будет менять абсолютный URL при переносе вашего сайта.

которую я понял, заключается в том, что RewriteCond в .htaccess ссылается на ПАПКИ, а не ТИПЫ ФАЙЛОВ. Другими словами, положить|css| там не делает jack, если ваши таблицы стилей не находятся в папке / css /. Перечислите фактические папки, так что|styles| или|scripts| или что угодно. ТОГДА и только тогда будет использовать"<?=base_url()?>styles/style.css" (например) показать. Мне потребовалось около 2 дней, чтобы понять это, поэтому я надеюсь, что чтение этого сэкономит кому-то волосы и высокое кровяное давлени

вызова css в Codeigniter.

образец код

<?php 
class Home extends CI_Controller{

    public function helper(){
        $this->load->helper('html');    
        $this->load->helper('url'); 
        $this->load->view('index');

    }
}
?>

Затем вызвать файл CSS с помощьюlink_tag ключевое слово. Как то так вindex.php файл в

<html>
<head>
    <title></title>
     <?php echo link_tag('css/moorainbow.css');?>
</head>
<body>
<?php 
.....
?>
</body>
</html>

Вотcss/ - это папка, содержащая файл moorainbow.css.

Ваш ответ на вопрос