#php #css #templates #frameworks #atk4
#php #css #шаблоны #фреймворки #атк4 #atk4
Вопрос:
Последняя оставшаяся часть моего исходного приложения, которая не использует atk4, — это динамические CSS-файлы, созданные на php и выводящие заголовок css. Ширина определяется на основе данных в mysql и необходима для обеспечения того, чтобы размер экрана не изменялся постоянно при перетаскивании заметок.
С чего мне следует начать, если я хочу создать файл .css, который имеет структуру шаблона, аналогичную шаблонам html, чтобы я мог использовать определение css, например
.fullwidth {
width:<?$width?>;
}
Заранее спасибо.
Ответ №1:
Во-первых, вам нужно будет переписать ваши CSS-файлы заново.htaccess. Создайте страницу, предназначенную для создания CSS в вашей системе.
RewriteRule ^css/dynamic.css$ index.php?page=css
Затем создайте класс внутри page/css.php
class page_css extends Page {
function init(){
parent::init();
echo ".fullwidth { ... } ";
exit;
}
}
В этом случае шаблоны не очень помогают, но если вы хотите их использовать, не забудьте выполнить echo $template-> render(); и выйти.
Комментарии:
1. Если я добавлю defaultTemplate на эту страницу, будет ли она заполнена? И как мне обратиться к странице css, могу ли я включить ее с помощью $this-> api-> template->append(‘css_include’, ‘<link type=»text / css» href=»‘.$this-> api->locateURL(‘css’,’dynamic.css’).'» rel=»таблица стилей» />’.» n»);
2. defaultTemplate отображается рекурсивным отображением, которое происходит после инициализации. Если вы завершите работу раньше, этого никогда не произойдет: agiletoolkit.org/learn/understand/api/exec Что касается включения CSS, я уже добавил «статический» JavaScript , но для таблиц стилей нет статических включений. Специальная функция будет добавлена в версии 4.1.3, пока используйте опубликованный вами код. За исключением того, что locateURL не будет работать, поскольку такой файл не будет существовать.
3. ОК — я добавил <?$css_include?> в моем shared.html прямо над существующей js_include так что я могу добавить CSS, но это никак не влияло на JavaScript, так что я дам ему попробовать. Спасибо