Ответ 1
Установите Ruby. Установите SASS. Используйте SASS.
Он выводит статические файлы, поэтому вы просто загружаете их, как и любой другой CSS, как часть процесса сборки/публикации.
Я разработчик интерфейса и недавно рассмотрел использование SASS или LESS для разработки CSS.
Однако я не использую Ruby, и я не хочу полагаться на пользователей с активным JavaScript. У кого-нибудь есть советы по использованию SASS или LESS с использованием проектов PHP?
Установите Ruby. Установите SASS. Используйте SASS.
Он выводит статические файлы, поэтому вы просто загружаете их, как и любой другой CSS, как часть процесса сборки/публикации.
Загрузите последнюю версию lessphp здесь.
Вот пример того, как я это пробовал:
<?php
require 'lessc.inc.php';
$less = new lessc('test.less');
file_put_contents('test.less.css', $less->parse());
?>
<html>
<head>
<title>Less CSS</title>
<link rel="stylesheet" href="test.less.css" type="text/css" />
</head>
<body>
<h1>This isn't supposed to be black!</h1>
</body>
</html>
И мой файл test.less:
@color : #33ddff;
.colorful(@textcolor : red){
color : @textcolor;
}
h1{
.colorful(@color);
}
Это работает для меня, и это php!
Теперь у вас есть два варианта:
Оба документа хорошо документированы. Я призываю вас попробовать их и сказать, есть ли у вас проблемы.
Взгляните на этот учебник: http://net.tutsplus.com/tutorials/php/how-to-squeeze-the-most-out-of-less/
(4-я запись, когда googling "меньше php" )
Меньше PHP требует много ресурсов... хорошо, что партия относительна, но в любом случае вы должны прочесть вывод css. Если вы находитесь на Mac, используйте LESSapp. Если вы работаете в Windows, используйте dotLEss (на самом деле это библиотека, которая может быть интегрирована в несколько .NET-проектов, но он имеет небольшой компилятор командной строки, который выводит действительный файл CSS)
В рамках моей работы я использую sass с php.
Вы можете попробовать PhamlP, так как это то, что я использую. PhamlP
- это порт Haml
и Sass
- PHP
.
У вас может быть, что парсер sass запускает каждую загрузку на странице, или вы можете кэшировать созданный css
.
Здесь задан тот же вопрос. Если вы хотите увидеть больше параметров
Вы можете использовать PhpLessDemandBridge для этого: https://github.com/andyhausmann/PhpLessDemandBridge
Вы можете просто использовать его в своих шаблонах, например:
<link rel="stylesheet" type="text/css" media="all" href="css/engine/css.php?file=bootstrap.less" />
Двигатель можно настроить через конфигурационный файл, где вы определяете свой путь меньше файлов и файлов кеша.
Определив "css.php? file = bootstrap.less", вы указываете Engine на файл начальной загрузки, который импортирует другие меньше файлов, например. Twitter Bootstrap или такой.
Я использую это для Magento, TYPO3 CMS и многих других.
В первой строке я включаю необходимые части Twitter-бутстрапа - после этого я включаю свою собственную тему и переопределяет.
Если вы работаете с WordPress, вам обязательно нужно проверить WP LESS. Все, что вам нужно сделать, это указать файл .less
с wp_register_style
или wp_enqueue_style
или даже add_editor_style
, и он компилирует ваш код LESS в код CSS для вас. Он также кэширует полученный CSS, поэтому у вас нет накладных расходов при компиляции LESS при каждой загрузке страницы.
Теперь есть еще один компилятор: less.php
У меня http://leafo.net/scssphp/ для нескольких проектов. Это хорошо работает для меня, вот что я делаю.
Установите scssphp в lib/scssphp/
В .htaccess
#Sass Parser: anything /css/FILENAME.css -> FILENAME.scss
RewriteRule ^css/(.*).css?$ style.php/$1.scss [NC,L]
В корневой папке у меня есть style.php:
<?php
require "lib/scssphp/scss.inc.php";
$scss = new scssc();
$scss->setFormatter("scss_formatter");
$server = new scss_server("ui", null, $scss);
$server->serve();
?>
В моем HTML я использую:
<link rel="stylesheet" href="/css/style.css">
В/ui у меня есть файл фактического кода SCSS:/ui/style.scss
И все просто работает. SCSSPHP просто проверяет, нужно ли перекомпилировать файл и прозрачно ли он, иначе отправляет кешированную версию.
Почему бы просто не использовать PHP для динамического создания CSS? Вот 10 веских причин:
LESS предоставляет 1 неудобную, незнакомую форму цикла, в то время как PHP предоставляет 4 формы знакомого, собственного цикла (do, while, for, foreach).
LESS предоставляет 1 неудобную, незнакомую форму переменных, в то время как PHP предоставляет от 6 до 12 знакомых встроенных структур данных: переменные, массивы, ассоциативные массивы/хэш-таблицы, массивы массивов/многомерных массивов, объекты и запись базы данных наборы. Стандартная библиотека PHP также предоставляет кучи, стеки, очереди, карты, двунаправленные списки и фиксированные массивы.
LESS не предоставляет условных выражений - в то время как PHP предлагает 4 знакомые, собственные формы условностей: if-then, if-then-else, case/switch и тернарный оператор.
LESS предоставляет 1 неудобную, незнакомую форму включения файлов (импорт) - в то время как PHP предоставляет 2 знакомые, родные формы: include и require.
LESS предоставляет различные неудобные, незнакомые формы структурирования вашего CSS - в то время как PHP предоставляет знакомые, родные, объектно-ориентированные формы структурирования вашего кода.
LESS требует обучения по существу новому языку программирования и последующего его изменения со временем, в то время как PHP использует ваши существующие знания.
МЕНЬШЕ делает ваш код менее читабельным и менее последовательным - в то время как предварительная обработка CSS в PHP сохраняет ваш код согласованным и делает его более читаемым.
LESS требует дополнительного шага "компиляции" /предварительной обработки и требует поддержки нескольких версий ваших файлов CSS, в то время как PHP может либо генерировать CSS динамически "на лету" из одного источника (если вы не заинтересованный в производительности) или он может генерировать окончательную "скомпилированную" /предварительно обработанную версию, как препроцессор LESS (если вас беспокоит производительность).
LESS требует загрузки и установки стороннего препроцессора, а PHP уже предоставляет функциональность.
LESS может использоваться только для CSS - в то время как PHP может использоваться для динамического создания CSS, HTML, JavaScript, jQuery и т.д.
Препроцессоры CSS, такие как LESS и SASS, могут быть спасителем для отчаянных разработчиков интерфейсов без доступа к вспомогательным инструментам, таким как PHP. Но для разработчиков PHP это контрпродуктивно и менее эффективно. По моему скромному мнению, это похоже на манию модного мазка и добавленную манию. PHP был разработан для обеспечения всех функций LESS и многое другое.