2012-03-28 1 views
0

Я работаю с cakephp 2.0 и хотел бы использовать разные css для каждого вида.Как добавить css в представление в Controler?

Знаете ли вы способ изменения результата команды $ this-> fetch ('css') в шаблоне default.ctp?

<?php  
    var_dump ($this->fetch('css')) ; 
?> 

дает

string(0) "" 

я нашел в книге рецептов http://book.cakephp.org/1.3/view/1437/css, но это не представляет интереса, так как = типа < ссылка отн "таблицы стилей" = "текст/CSS" HREF = "/ CSS/forms.css "/> находится только в разделе заголовка <> и что в моих шаблонах представления нет раздела < header>.

Другим ответом является использование массива в качестве параметра вида и изменение, следовательно, файла default.ctp, который анализирует этот массив файлов css. Но разве такой помощник уже включен в базовый cakephp2.0?

Благодарим за любой ответ.

ответ

1

Просто используйте HtmlHelper::css() в представлениях, чтобы добавить файлы CSS по мере необходимости. Используйте inline => true, чтобы сделать его встроенным, если вы не хотите иметь его в заголовке.

+0

$ this-> Html-> css ('myStyleSheetNameWithNoDotCss', 'stylesheet', array ('inline' => false)); –

1

Вы можете использовать это в представлениях:

<?php 
echo $this->Html->css('forms', null, array('block' => 'css')); 
?> 

Но, кажется, что если вы используете имя css для блока, он также появится в содержании $scripts_for_layout, если у вас есть один в шаблоне ,

Если это проблема, используйте другое имя для блока.