Я разрабатываю пользовательский API для веб-решения, и я использую шаблон проектирования MVC. У меня есть папка с модулями, поэтому я могу менять и изменять модули, а также работать над разделами, не нарушая работу проверенного кода. Моя единственная проблема сейчас в том, что я хочу загрузить CSS в любом месте и правильно импортировать файл css в тег head. Я знаю, что CodeIgniter делает это, но я не уверен, как это сделать.
Используя PHP, как я могу загрузить файл CSS в любом месте, а затем правильно ли импортировать код в теги заголовка, например CodeIgniter?
Заранее спасибо.
Вы можете загрузить сразу несколько просмотров или просмотреть другие представления.
Поэтому в этом случае я рекомендую вам создать один заголовок, где вы загружаете все файлы 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,
Pedro
@pcamacho
Ваш вопрос немного неясен для меня, но я сделаю все возможное, чтобы помочь. Вам просто интересно, как включить файл CSS в свои представления? Если это так, просто используйте следующее:
<style> @import url('/css/styles.css'); </style>
Если ваша папка CSS находится в корне вашего проекта CodeIgniter, вы можете сделать что-то подобное с помощью функции base_url () CodeIgniter:
<style> @import url('<?=base_url()?>/css/styles.css'); </style>
Это гарантирует, что ваши страницы остаются портативными и имеют правильный абсолютный URL. Надеюсь это поможет! Если нет, попробуйте быть более конкретным в своем вопросе
Используйте абсолютное …
<link rel="stylesheet" type="text/css" href="http://example.com/style/css">
… или корневой относительный URI.
<link rel="stylesheet" type="text/css" href="/style/css">
также убедитесь, что вы не перенаправляете 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" href="{pathToApp}/styles/main.css" type="text/css" media="screen" />
(после создания папки стилей в каталоге приложения), то в своем контроллере передайте это:
$path = '../system/application';
в массив и отправить массив в качестве второго параметра, если вы используете load-> view для загрузки вашего представления, вам нужно изменить {pathToApp} на $ array ['path'] (изменить $ array на то, что вы его назвали). Если вы используете встроенную в Templating систему CodeIgniter, тогда вы все настроены. По крайней мере таким образом вам не нужно будет изменять абсолютный URL-адрес при переносе вашего сайта.
Одна из важных вещей, которые я понял, это то, что RewriteCond в .htaccess относится к FOLDERS, а не FILE TYPES. Другими словами, положить |css|
в нем нет джек, если ваши таблицы стилей не находятся в папке / css /. Список фактических папок, поэтому |styles|
или |scripts|
или что-то еще. THEN, и только тогда будет использоваться "<?=base_url()?>styles/style.css"
(например). Мне потребовалось около 2 дней, чтобы понять это, поэтому я надеюсь, что чтение этого спасет кого-то волосы и высокое кровяное давление.
Сначала вы создаете функцию Controller и загружаете HTML-помощник для вызова 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
ключевого слова link_tag
. Что-то вроде этого в файле index.php
в
<html> <head> <title></title> <?php echo link_tag('css/moorainbow.css');?> </head> <body> <?php ..... ?> </body> </html>
Здесь css/
является папкой, содержащей файл moorainbow.css.
сделай это
<link rel="stylesheet" type="text/css" href="./css/style.css"> <link rel="stylesheet" type="text/css" href="../css/style.css">
но сначала создайте папку css в корневом каталоге и поместите туда style.css.