Меньшая производительность и реализация CSS - PullRequest
10 голосов
/ 24 мая 2011

Как лучше всего использовать LESS для CSS.

  • В основном разработчики должны написать файл Less и затем скомпилировать его для производства
  • Должен ли я связать LESS-код и файл javascript.
  • Или я должен вообще пропустить LESS и просто переделать классы

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

Я заменяю многие фоновые изображения градиентами CSS и тенями, поэтому я также пытаюсь избавиться от префиксов поставщиков. Иногда я вижу, как выглядит перегрузка классов, но плохо ли добавлять множество классов к элементу, например

<div class="comment dark-shadow round-corners"></div>

Ответы [ 4 ]

10 голосов
/ 24 мая 2011

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

Лично я чувствую, что ваши стили не должны зависеть от javascript для рендеринга, поэтому я использую less.app для компиляции всего моего LESS в CSS. Я отдыхаю более мирно, зная, что все мои CSS есть и что они работают правильно, прежде чем я положу что-нибудь "живое".

Если вам интересно, я также собираю библиотеку LESS mixin, которая может быть очень полезна: https://github.com/jdmiller82/-lessins-

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

Я согласен с Джонатаном, я не думаю, что вы должны зависеть от браузера пользователя для визуализации стилей.

Я предложил решение, которое использует node.js на сервере для перехвата запросов типа styles.css и попробуйте найти эквивалентный .less файл (в данном случае styles.less), проанализировать его и вернуть как CSS.

Так что на вашем сервере у вас будет просто styles.less, но вы можете запроситьURL example.com/styles.css и получите проанализированный LESS файл.Таким образом, интеграция беспрепятственна для остальной части вашего приложения и не требует, чтобы пользователь также включил JavaScript.

Вам не нужно использовать node.js для остальной части вашего приложения.Я сделал это в приложении PHP.

Мой учебник вы можете прочитать здесь: http://programming -perils.com / 155 / parse-less-files-on-fly-and-serve-их-как-CSS /

0 голосов
/ 08 июля 2015

Способ использования LESS для производственного веб-сайта состоит в том, чтобы скомпилировать файлы LESS в файлы CSS.

Для локальной разработки у вас может быть наблюдатель, который перестраивает CSS-файлы для LESS-файлов, которые были изменены.

Если у вас есть несколько CSS-файлов для производства из LESS, вы должны выделить их.

Например, если у вас на 30 файлов меньше и они создают два CSS-файла a.css и b.css, вам нужно разделить эти два задания, чтобы можно было быстрее их компилировать. Это быстрее для разработки, потому что вы только скомпилируете a.css, если измените какие-либо LESS-файлы, которые на него влияют.

0 голосов
/ 11 января 2014

Я понимаю, что этот ответ примерно на два года позже вышеуказанных, но я думаю, что вопрос все еще актуален.

Я думаю, что есть случаи использования, когда компиляция некоторой клиентской части LESS является хорошей идеей (при условии, что вы не поддерживаете IE 8 или ниже), и у вас есть сценарий использования, который его проверяет.Например, приложение, над которым я недавно работал, имеет настраиваемый, ориентированный на темы интерфейс, в котором необходимо изменять цвета текста и т. Д. В зависимости от того, является ли цвет фона, на котором они находятся, светлым или темным, и, возможно, в конечном итоге потребуется поддержкадля пользователя, чтобы изменить их и увидеть эти изменения отражены на сайте в режиме реального времени.Это отличный вариант использования для клиентской стороны. Меньше, я думаю.Обратите внимание, что компилируется только небольшая таблица стилей LESS, а остальная часть приложения LESS, которое не связано с тематикой, предварительно компилируется.Я не видел заметной разницы в производительности.

Так что, когда вы видите комментарии типа «Вы не всерьез думаете, что какой-то достойный разработчик использует меньше клиентской части, не так ли?», Я бы взял их скрупинка соли.

...