Ввод кода CSS для представления только непосредственно в представлении - PullRequest
0 голосов
/ 04 июня 2011

Я занимаюсь с CakePHP и просто удивляюсь, если logical/right thing разместить CSS части, выделенные только для шаблона view.это:

<style>
    .form-element-name {
        width:150px;
        /* colors and other stuff are placed in main css */
    }
</style>
<form>
    <div class="form-element-name">Username</div><input name="myuser"/>
    <div class="form-element-name">Password</div><input name="mypass"/>
    <etc.../>
</form>

Ответы [ 3 ]

2 голосов
/ 04 июня 2011

Самый простой способ сделать это - вызвать HTML-помощник так:

<?php echo $this->Html->css('forms'); ?>

Файл должен находиться в папке /app/webroot/css, чтобы это работало. Расширение .css не требуется, поскольку помощник добавляет его автоматически.
Не забудьте добавить HTML-помощник в свой контроллер var $helpers = array('Html');

Если вы сделаете это таким образом, вы можете сохранить макет и контент логически разделенными, что я бы назвал хорошей практикой.

Также посетите CakeBook для получения дополнительной информации о HTML-Helper .

0 голосов
/ 04 июня 2011

Вы хотите, чтобы все ваши CSS содержались в как можно меньшем количестве файлов.Это связано с тем, что браузеры будут загружать только по 2 файла одновременно, а наличие множества разных файлов для каждой страницы означает время ожидания загрузки.

Также вы не сможете использовать кэш браузера, так как каждый отдельный файл будет использоватьсяодин раз.Вместо одного большого файла, загружаемого на первую страницу, затем загружается из кэша на последующих страницах.

Tl; dr большие файлы быстрее, чем несколько маленьких файлов.

0 голосов
/ 04 июня 2011

Я бы поместил его в отдельный файл и заставил бы только этот вид вызывать его сейчас.Таким образом, если вам нужно внести много изменений или использовать его для чего-то другого, вы можете скопировать / отредактировать файл или вызвать его в другое представление.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...