SlideShare uma empresa Scribd logo
1 de 13
LESS
CSS preprocessor
ИСТОРИЯ LESS
Динамический язык стилей, который разработал Alexis Sellier
Это продукт с открытым исходным кодом.
Первая версия была написана на Ryby, однако в последующих версиях
решено отказаться от использования в пользу JavaScript.
Валидный CSS будет валидной less-программой
• Удобен в использовании
• Регулярные обновления и множество документации
• Позволяет писать упрощенный css-код
• (Который затем компилируется в чистый CSS.)
• Реализация переменных
• (Теперь нет необходимости десятки раз копировать
один и тот же участок
• кода, достаточно раз запихнуть его в переменную и
просто указывать ее,
• когда требуется.)
• Так же добавляются операции, function-like элементы и
примеси
ЧЕМ LESS МОЖЕТ БЫТЬ
ПОЛЕЗЕН В РАЗРАБОТКЕ
Есть два способа использования LESS. Вы
можете создать LESS файл и конвертировать
его при помощи Javascript на лету или
скомпилировать его заранее и использовать
получившийся CSS файл.
КАК ИСПОЛЬЗОВАТЬ LESS
Для начала нужно скачать с сайта LESS
Javascript файл и привязать его к страничке
как любой другой js скрипт.
<script src="less.js“ type="text/javascript"></script>
Затем создадим файл с расширением .less и
привяжем его с помощью такого кода:
<link rel="stylesheet/less" type="text/css" href="style.less">
ИСПОЛЬЗУЕМ LESS И
JAVASCRIPT ФАЙЛ
Чтобы не конвертировать код при каждой
загрузке страницы можно использовать
результирующий CSS файл.
Для его компиляции существует множество
оффлайн и онлайн ресурсов.
КОМПИЛИРУЕМ LESS ФАЙЛ
ВЛОЖЕННЫЕ ПРАВИЛА
#header h1 {
font-size: 26px;
font-weight: bold;
}
#header p {
font-size: 12px;
}
#header p a {
text-decoration: none;
}
#header p a:hover {
border-width: 1px;
}
LESS даёт возможность вкладывать
определения вместо либо
вместе с каскадированием. Пусть, например, у
нас есть такой
CSS: CSS поддерживает логическое
каскадирование, но один
блок кода в другой вложен быть не может.
LESS позволяет
вложить один селектор в другой. Это делает
наследование
более ясным и укорачивает таблицы стилей.
#header {
h1 {
font-size: 26px;
font-weight: bold;
}
p {
font-size: 12px;
a {
text-decoration:
none;
&:hover {
border-
width: 1px
}
}
}
}
Переменные в LESS работают так же как в PHP, JS и
в большинстве других языков программирования.
Имя переменной предваряется символом @. В качестве знака
присваивания используется двоеточие (:).
@header-font: Georgia;
h1, h2, h3, h4 {
font-family: @header-font;
}
.large {
font-family:@header-font;
}
ПЕРЕМЕННЫЕ
Область видимости переменных описывает места, где они
доступны. Если вы определите переменную в самом начале
LESS файла, то она будет доступна для любого кода
написанного после.
Также можно определять переменную внутри CSS правила. В
этом случае переменные не будут доступны вне этого
правила, они могут быть использованы локально.
a {
@color: #ff9900;
color:@color;
}
button {
background: @color;
}
ОБЛАСТЬ ВИДИМОСТИ
ПЕРЕМЕННЫХ
Данный код скомпилится с ошибкой.
Т.к. переменная color
не будет видна для button
ОПЕРАЦИИ
Благодаря операциям можно складывать,
вычитать, делить и умножать
значения свойств и цветов, что можно
использовать для создания
сложных отношений между свойствами.
@the-border: 1px;
@base-color: #111;
@red: #842210;
#header {
color: @base-color * 3;
border-left: @the-border;
border-right: @the-border * 2;
}
#footer {
color: @base-color + #003300;
border-color: desaturate(@red, 10%);
}
#header {
color: #333;
border-left: 1px;
border-right: 2px;
}
#footer {
color: #114411;
border-color: #7d2717;
}
ПРИМЕСИ
Примеси позволяют включать целый набор
свойств из одного набора
правил в другой путём включения имени
класса в качестве одного из
свойств другого класса. Они также могут
вести себя подобно функциям,
принимая аргументы.
.rounded-corners (@radius: 5px) {
-webkit-border-radius: @radius;
-moz-border-radius: @radius;
border-radius: @radius;
}
#header {
.rounded-corners;
}
#footer {
.rounded-corners(10px);
}
#header {
-webkit-border-radius:
5px;
-moz-border-radius: 5px;
border-radius: 5px;
}
#footer {
-webkit-border-radius:
10px;
-moz-border-radius: 10px;
border-radius: 10px;
}
И Sass, и LESS — это препроцессоры CSS, позволяющие
писать ясный CSS с использованием программных
конструкций вместо статических правил.
LESS вдохновлен Sass. Sass был спроектирован с целью как
упростить, так и расширить CSS, в первых версиях фигурные
скобки были исключены из синтаксиса (этот синтаксис
называется sass). LESS разработан с целью быть как можно
ближе к CSS, поэтому у них идентичный синтаксис. В
результате существующие CSS можно использовать в качестве
LESS кода. Новые версии Sass также включают CSS-подобный
синтаксис, который называется SCSS (Sassy CSS).
СРАВНЕНИЕ С ДРУГИМИ
ПРЕПРОЦЕССОРАМИ CSS
СПАСИБО ЗА ВНИМАНИЕ

Mais conteúdo relacionado

Semelhante a Less

ZFConf 2010: Zend Framework and Multilingual
ZFConf 2010: Zend Framework and MultilingualZFConf 2010: Zend Framework and Multilingual
ZFConf 2010: Zend Framework and Multilingual
ZFConf Conference
 
как стать хорошим веб технологом. нарек мкртчян. зал 4
как стать хорошим веб технологом. нарек мкртчян. зал 4как стать хорошим веб технологом. нарек мкртчян. зал 4
как стать хорошим веб технологом. нарек мкртчян. зал 4
rit2011
 
C# Desktop. Занятие 10.
C# Desktop. Занятие 10.C# Desktop. Занятие 10.
C# Desktop. Занятие 10.
Igor Shkulipa
 
"Теория и практика открытых данных" (Пермь) Часть 2: Порталы и использование ...
"Теория и практика открытых данных" (Пермь) Часть 2: Порталы и использование ..."Теория и практика открытых данных" (Пермь) Часть 2: Порталы и использование ...
"Теория и практика открытых данных" (Пермь) Часть 2: Порталы и использование ...
Vitaly Vlasov
 

Semelhante a Less (20)

Презентация на тему "WEB-программирование"
Презентация на тему "WEB-программирование"Презентация на тему "WEB-программирование"
Презентация на тему "WEB-программирование"
 
Основы HTML
Основы HTMLОсновы HTML
Основы HTML
 
Парсим CSS
Парсим CSSПарсим CSS
Парсим CSS
 
Фронтенд разработка без боли
Фронтенд разработка без болиФронтенд разработка без боли
Фронтенд разработка без боли
 
Erb vs haml vs slim
Erb vs haml vs slimErb vs haml vs slim
Erb vs haml vs slim
 
ZFConf 2010: Zend Framework and Multilingual
ZFConf 2010: Zend Framework and MultilingualZFConf 2010: Zend Framework and Multilingual
ZFConf 2010: Zend Framework and Multilingual
 
Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4Мировые информационные ресурсы. Лекция 4
Мировые информационные ресурсы. Лекция 4
 
как стать хорошим веб технологом. нарек мкртчян. зал 4
как стать хорошим веб технологом. нарек мкртчян. зал 4как стать хорошим веб технологом. нарек мкртчян. зал 4
как стать хорошим веб технологом. нарек мкртчян. зал 4
 
20160330 Приложение с использованием данных с сервера (EMS)
20160330 Приложение с использованием данных с сервера (EMS) 20160330 Приложение с использованием данных с сервера (EMS)
20160330 Приложение с использованием данных с сервера (EMS)
 
Язык HTML
Язык HTMLЯзык HTML
Язык HTML
 
Язык HTML
Язык HTMLЯзык HTML
Язык HTML
 
Html5 css3 занятие 4
Html5 css3 занятие 4Html5 css3 занятие 4
Html5 css3 занятие 4
 
Современный подход к локализации на примере одного проекта
Современный подход к локализации на примере одного проектаСовременный подход к локализации на примере одного проекта
Современный подход к локализации на примере одного проекта
 
C# Desktop. Занятие 10.
C# Desktop. Занятие 10.C# Desktop. Занятие 10.
C# Desktop. Занятие 10.
 
Html5 css3 занятие 2
Html5 css3 занятие 2Html5 css3 занятие 2
Html5 css3 занятие 2
 
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС «Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС
«Путь от монолита на PHP к микросервисам на Scala» – Денис Иванов, 2ГИС
 
презентация 4. введение в css
презентация 4. введение в cssпрезентация 4. введение в css
презентация 4. введение в css
 
Semantic Grid. Layout of the future
Semantic Grid. Layout of the futureSemantic Grid. Layout of the future
Semantic Grid. Layout of the future
 
Html5 css3 занятие 3
Html5 css3 занятие 3Html5 css3 занятие 3
Html5 css3 занятие 3
 
"Теория и практика открытых данных" (Пермь) Часть 2: Порталы и использование ...
"Теория и практика открытых данных" (Пермь) Часть 2: Порталы и использование ..."Теория и практика открытых данных" (Пермь) Часть 2: Порталы и использование ...
"Теория и практика открытых данных" (Пермь) Часть 2: Порталы и использование ...
 

Less

  • 2. ИСТОРИЯ LESS Динамический язык стилей, который разработал Alexis Sellier Это продукт с открытым исходным кодом. Первая версия была написана на Ryby, однако в последующих версиях решено отказаться от использования в пользу JavaScript. Валидный CSS будет валидной less-программой
  • 3. • Удобен в использовании • Регулярные обновления и множество документации • Позволяет писать упрощенный css-код • (Который затем компилируется в чистый CSS.) • Реализация переменных • (Теперь нет необходимости десятки раз копировать один и тот же участок • кода, достаточно раз запихнуть его в переменную и просто указывать ее, • когда требуется.) • Так же добавляются операции, function-like элементы и примеси ЧЕМ LESS МОЖЕТ БЫТЬ ПОЛЕЗЕН В РАЗРАБОТКЕ
  • 4. Есть два способа использования LESS. Вы можете создать LESS файл и конвертировать его при помощи Javascript на лету или скомпилировать его заранее и использовать получившийся CSS файл. КАК ИСПОЛЬЗОВАТЬ LESS
  • 5. Для начала нужно скачать с сайта LESS Javascript файл и привязать его к страничке как любой другой js скрипт. <script src="less.js“ type="text/javascript"></script> Затем создадим файл с расширением .less и привяжем его с помощью такого кода: <link rel="stylesheet/less" type="text/css" href="style.less"> ИСПОЛЬЗУЕМ LESS И JAVASCRIPT ФАЙЛ
  • 6. Чтобы не конвертировать код при каждой загрузке страницы можно использовать результирующий CSS файл. Для его компиляции существует множество оффлайн и онлайн ресурсов. КОМПИЛИРУЕМ LESS ФАЙЛ
  • 7. ВЛОЖЕННЫЕ ПРАВИЛА #header h1 { font-size: 26px; font-weight: bold; } #header p { font-size: 12px; } #header p a { text-decoration: none; } #header p a:hover { border-width: 1px; } LESS даёт возможность вкладывать определения вместо либо вместе с каскадированием. Пусть, например, у нас есть такой CSS: CSS поддерживает логическое каскадирование, но один блок кода в другой вложен быть не может. LESS позволяет вложить один селектор в другой. Это делает наследование более ясным и укорачивает таблицы стилей. #header { h1 { font-size: 26px; font-weight: bold; } p { font-size: 12px; a { text-decoration: none; &:hover { border- width: 1px } } } }
  • 8. Переменные в LESS работают так же как в PHP, JS и в большинстве других языков программирования. Имя переменной предваряется символом @. В качестве знака присваивания используется двоеточие (:). @header-font: Georgia; h1, h2, h3, h4 { font-family: @header-font; } .large { font-family:@header-font; } ПЕРЕМЕННЫЕ
  • 9. Область видимости переменных описывает места, где они доступны. Если вы определите переменную в самом начале LESS файла, то она будет доступна для любого кода написанного после. Также можно определять переменную внутри CSS правила. В этом случае переменные не будут доступны вне этого правила, они могут быть использованы локально. a { @color: #ff9900; color:@color; } button { background: @color; } ОБЛАСТЬ ВИДИМОСТИ ПЕРЕМЕННЫХ Данный код скомпилится с ошибкой. Т.к. переменная color не будет видна для button
  • 10. ОПЕРАЦИИ Благодаря операциям можно складывать, вычитать, делить и умножать значения свойств и цветов, что можно использовать для создания сложных отношений между свойствами. @the-border: 1px; @base-color: #111; @red: #842210; #header { color: @base-color * 3; border-left: @the-border; border-right: @the-border * 2; } #footer { color: @base-color + #003300; border-color: desaturate(@red, 10%); } #header { color: #333; border-left: 1px; border-right: 2px; } #footer { color: #114411; border-color: #7d2717; }
  • 11. ПРИМЕСИ Примеси позволяют включать целый набор свойств из одного набора правил в другой путём включения имени класса в качестве одного из свойств другого класса. Они также могут вести себя подобно функциям, принимая аргументы. .rounded-corners (@radius: 5px) { -webkit-border-radius: @radius; -moz-border-radius: @radius; border-radius: @radius; } #header { .rounded-corners; } #footer { .rounded-corners(10px); } #header { -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; } #footer { -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; }
  • 12. И Sass, и LESS — это препроцессоры CSS, позволяющие писать ясный CSS с использованием программных конструкций вместо статических правил. LESS вдохновлен Sass. Sass был спроектирован с целью как упростить, так и расширить CSS, в первых версиях фигурные скобки были исключены из синтаксиса (этот синтаксис называется sass). LESS разработан с целью быть как можно ближе к CSS, поэтому у них идентичный синтаксис. В результате существующие CSS можно использовать в качестве LESS кода. Новые версии Sass также включают CSS-подобный синтаксис, который называется SCSS (Sassy CSS). СРАВНЕНИЕ С ДРУГИМИ ПРЕПРОЦЕССОРАМИ CSS