SlideShare una empresa de Scribd logo
1 de 26
Descargar para leer sin conexión
SASS & LESS
проблемы css

●   структура отсутствует
●   нельзя быстро поменять код
●   необходимо писать костыли
●   производительность
методы борьбы

●   переменные
●   области видимости
●   повторы кода в отдельные блоки
сss != <язык программирования>
выход есть
холивар

    LESS                       SASS
●   проще                  ●   больше возможностей
●   поддержка javascript   ●   совместимый с CSS
стоит попробовать оба!
SCSS – диалект SASS
       SASS                           SCSS
 $blue: #3bbfce               $blue: #3bbfce;

 $margin: 16px                $margin: 16px;



 .content-navigation          .content-navigation {

   border-color: $blue           border-color: $blue;

   color: darken($blue, 9%)      color: darken($blue, 9%); }


                              .border {
 .border
                                 padding: $margin / 2;
   padding: $margin / 2
                                 margin: $margin / 2;
   margin: $margin / 2
                                border-color: $blue; }
   border-color: $blue
compass

●   кросcбраузерные стили
●   основа - SASS
базовые возможности
         &
     синтаксис
вложенные условия
                  LESS                                 CSS
 #header {                                  #header h1 {
                                                font-size: 26px;
    h1 {
                                                font-weight: bold;
         font-size: 26px;
                                            }
         font-weight: bold;
                                            #header p {
    }                                           font-size: 12px;

    p { font-size: 12px;                    }

        a { text-decoration: none;          #header p a {
                                                text-decoration: none;
            &:hover { border-width: 1px }
                                            }
        }
                                            #header p a:hover {
    }                                           border-width: 1px;
}                                           }
вложенные условия
             SСSS                      CSS
 #navbar {                      #navbar {
     width: 80%;                   width: 80%;
     height: 23px;                 height: 23px; }
     ul { list-style-type:         #navbar ul {
     none; }
                                      list-style-type:
     li {                             none; }
     float: left;                  #navbar li {

     a { font-weight: bold; }            float:
                                         left; }
     }                             #navbar li a {
 }                                    font-weight:
                                   bold; }
родительские ссылки
        LESS & SCSS                    CSS
 a {                          a {
       color: #ce4dd6;          color: #ce4dd6; }
       &:hover {                a:hover {
          color: #ffb3ff; }         color: #ffb3ff; }
       &:visited {
                                a:visited {
          color: #c458cb; }
                                    color: #c458cb; }
 }
переменные
             LESS              CSS
 @color: #4D926F;     #header {
 #header {                color: #4D926F;
     color: @color;   }
 }                    h2 {
 h2 {                     color: #4D926F;
     color: @color;   }
 }
переменные
             SСSS                      CSS
 $main-color: #ce4dd6;        #navbar {
 $style: solid;                     border-bottom-color:
                                    #ce4dd6;
 #navbar {
                                    border-bottom-style:
     border-bottom: {               solid; }
       color: $main-color;    a {
       style: $style;   } }         color: #ce4dd6;}
 a {                          a:hover {
     color: $main-color;            border-bottom: solid
                                    1px; }
   &:hover { border-bottom:
 $style 1px; }
 }
примеси
               LESS                                CSS
 .rounded-corners (@radius: 5px) {     #header {

     -webkit-border-radius: @radius;     -webkit-border-radius: 5px;
                                         -moz-border-radius: 5px;
     -moz-border-radius: @radius;
                                         -ms-border-radius: 5px;
     -ms-border-radius: @radius;
                                         -o-border-radius: 5px;
     -o-border-radius: @radius;
                                         border-radius: 5px;    }
     border-radius: @radius;           #footer {
 }                                       -webkit-border-radius: 10px;
                                         -moz-border-radius: 10px;

 #header { .rounded-corners; }           -ms-border-radius: 10px;

 #footer { .rounded-corners(10px); }     -o-border-radius: 10px;
                                         border-radius: 10px;    }
примеси
                 SСSS                                       CSS
 @mixin rounded($side, $radius: 10px) {      #navbar li {

     border-#{$side}-radius: $radius;         border-top-radius: 10px;
                                              -moz-border-radius-top: 10px;
     -moz-border-radius-#{$side}: $radius;
                                              -webkit-border-top-radius: 10px; }
   -webkit-border-#{$side}-radius:
                                             #footer {
 $radius;
                                              border-top-radius: 5px;
 }
                                              -moz-border-radius-top: 5px;
                                              -webkit-border-top-radius: 5px; }
 #navbar li { @include rounded(top); }       #sidebar {
 #footer { @include rounded(top, 5px); }      border-left-radius: 8px;

 #sidebar { @include rounded(left, 8px); }    -moz-border-radius-left: 8px;
                                              -webkit-border-left-radius: 8px; }
функции и операторы
                LESS                                 CSS
 @the-border: 1px;                          #header {
 @base-color: #111;
                                                color: #333;
 @red:         #842210;
                                                border-left: 1px;
 #header {
     color: (@base-color * 3);                  border-right: 2px;
     border-left: @the-border;              }
     border-right: (@the-border * 2);       #footer {
 }
                                                color: #114411;
 #footer {
                                              border-color:
     color: (@base-color + #003300);
                                            #7d2717;
     border-color: desaturate(@red, 10%);
                                            }
 }
функции и операторы
           SСSS                        CSS
 $grid-width: 40px;             #sidebar {
 $gutter-width: 10px;             width: 240px; }


 @function grid-width($n) {
   @return $n * $grid-width +
 ($n - 1) * $gutter-width;
 }


 #sidebar { width: grid-
 width(5); }
разные фичи

●   условия
●   циклы
●   перегрузка функций
●   интерполяция переменных
●   функции работы с цветом
●   пространства имен
●   режимы вывода
установка
консоль

●   Node.js
      npm install less
      sudo apt get install node-less

●   Ruby gem
      gem install sass
      gem install compass
модули

●   LESS    http://drupal.org/project/less
●   SASSy   http://drupal.org/project/sassy
●   SASS    http://drupal.org/project/sass
итоги

●   удобно
●   несложно
●   доступно
●   будет в D8
ссылки

●   http://lesscss.org/
●   sass-lang.com
●   http://compass-style.org/
●   http://drupal.org/project/compass
●   http://drupal.org/project/compass
●   http://drupal.org/project/compass
спасибо за внимание!

Más contenido relacionado

Destacado

Маладзёжная грамадскае аб'яднанне Фаланстэр. Перадгісторыя і пачатак гісторыі
Маладзёжная грамадскае аб'яднанне Фаланстэр. Перадгісторыя і пачатак гісторыіМаладзёжная грамадскае аб'яднанне Фаланстэр. Перадгісторыя і пачатак гісторыі
Маладзёжная грамадскае аб'яднанне Фаланстэр. Перадгісторыя і пачатак гісторыіzabej
 
Mesh club. Introduction
Mesh club. IntroductionMesh club. Introduction
Mesh club. Introductionzabej
 
Альтернативные лицензии в Беларуси
Альтернативные лицензии в БеларусиАльтернативные лицензии в Беларуси
Альтернативные лицензии в Беларусиzabej
 
Помощник велосипедиста 2.0. Как помочь?
Помощник велосипедиста 2.0. Как помочь?Помощник велосипедиста 2.0. Как помочь?
Помощник велосипедиста 2.0. Как помочь?zabej
 
Крак для копирайта: свободные лицензии
Крак для копирайта: свободные лицензииКрак для копирайта: свободные лицензии
Крак для копирайта: свободные лицензииzabej
 
Криптовечеринка 2.0. Браузеры
Криптовечеринка 2.0. БраузерыКриптовечеринка 2.0. Браузеры
Криптовечеринка 2.0. Браузерыzabej
 
Мартин Клиим. Open City Data.
Мартин Клиим. Open City Data.Мартин Клиим. Open City Data.
Мартин Клиим. Open City Data.zabej
 
Инструмент участия
Инструмент участияИнструмент участия
Инструмент участияzabej
 
Пиратское движение в Беларуси
Пиратское движение в БеларусиПиратское движение в Беларуси
Пиратское движение в Беларусиzabej
 
Drush&drupal. administration
Drush&drupal. administrationDrush&drupal. administration
Drush&drupal. administrationzabej
 
Смачная творчасць
Смачная творчасцьСмачная творчасць
Смачная творчасцьzabej
 
Электронное участие
Электронное участиеЭлектронное участие
Электронное участиеzabej
 
Творчыя суполкі. 2014-2016
Творчыя суполкі. 2014-2016Творчыя суполкі. 2014-2016
Творчыя суполкі. 2014-2016zabej
 
Криптовечеринка 2.0. HTTPS
Криптовечеринка 2.0. HTTPSКриптовечеринка 2.0. HTTPS
Криптовечеринка 2.0. HTTPSzabej
 

Destacado (14)

Маладзёжная грамадскае аб'яднанне Фаланстэр. Перадгісторыя і пачатак гісторыі
Маладзёжная грамадскае аб'яднанне Фаланстэр. Перадгісторыя і пачатак гісторыіМаладзёжная грамадскае аб'яднанне Фаланстэр. Перадгісторыя і пачатак гісторыі
Маладзёжная грамадскае аб'яднанне Фаланстэр. Перадгісторыя і пачатак гісторыі
 
Mesh club. Introduction
Mesh club. IntroductionMesh club. Introduction
Mesh club. Introduction
 
Альтернативные лицензии в Беларуси
Альтернативные лицензии в БеларусиАльтернативные лицензии в Беларуси
Альтернативные лицензии в Беларуси
 
Помощник велосипедиста 2.0. Как помочь?
Помощник велосипедиста 2.0. Как помочь?Помощник велосипедиста 2.0. Как помочь?
Помощник велосипедиста 2.0. Как помочь?
 
Крак для копирайта: свободные лицензии
Крак для копирайта: свободные лицензииКрак для копирайта: свободные лицензии
Крак для копирайта: свободные лицензии
 
Криптовечеринка 2.0. Браузеры
Криптовечеринка 2.0. БраузерыКриптовечеринка 2.0. Браузеры
Криптовечеринка 2.0. Браузеры
 
Мартин Клиим. Open City Data.
Мартин Клиим. Open City Data.Мартин Клиим. Open City Data.
Мартин Клиим. Open City Data.
 
Инструмент участия
Инструмент участияИнструмент участия
Инструмент участия
 
Пиратское движение в Беларуси
Пиратское движение в БеларусиПиратское движение в Беларуси
Пиратское движение в Беларуси
 
Drush&drupal. administration
Drush&drupal. administrationDrush&drupal. administration
Drush&drupal. administration
 
Смачная творчасць
Смачная творчасцьСмачная творчасць
Смачная творчасць
 
Электронное участие
Электронное участиеЭлектронное участие
Электронное участие
 
Творчыя суполкі. 2014-2016
Творчыя суполкі. 2014-2016Творчыя суполкі. 2014-2016
Творчыя суполкі. 2014-2016
 
Криптовечеринка 2.0. HTTPS
Криптовечеринка 2.0. HTTPSКриптовечеринка 2.0. HTTPS
Криптовечеринка 2.0. HTTPS
 

Similar a Sass&less на Drupal-слёте

Front-end разработка. Compass
Front-end разработка. CompassFront-end разработка. Compass
Front-end разработка. CompassDrupalSib
 
Андрей Тюпа Оптимизация верстки Sass + Compass framework
Андрей Тюпа Оптимизация верстки Sass + Compass frameworkАндрей Тюпа Оптимизация верстки Sass + Compass framework
Андрей Тюпа Оптимизация верстки Sass + Compass frameworkAlbina Tiupa
 
010 презентация less и адаптивный дизайн
010 презентация   less и адаптивный дизайн010 презентация   less и адаптивный дизайн
010 презентация less и адаптивный дизайнsivorka
 
Стажировка-2015. Разработка. Занятие 13. Сборка фронтенда
Стажировка-2015. Разработка. Занятие 13. Сборка фронтендаСтажировка-2015. Разработка. Занятие 13. Сборка фронтенда
Стажировка-2015. Разработка. Занятие 13. Сборка фронтенда7bits
 
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"Yandex
 
CSS. Практика
CSS. ПрактикаCSS. Практика
CSS. ПрактикаVitebsk Miniq
 
Вёрстка в стиле Ruby: HAML, SASS, Compass, CoffeeScript, Jammit
Вёрстка в стиле Ruby: HAML, SASS, Compass, CoffeeScript, JammitВёрстка в стиле Ruby: HAML, SASS, Compass, CoffeeScript, Jammit
Вёрстка в стиле Ruby: HAML, SASS, Compass, CoffeeScript, JammitAndrey Sitnik
 
Владимир Гриненко "Инструменты фронтенд-разработчика"
Владимир Гриненко "Инструменты фронтенд-разработчика"Владимир Гриненко "Инструменты фронтенд-разработчика"
Владимир Гриненко "Инструменты фронтенд-разработчика"Yandex
 
Ваш CSS нас не устраивает, мы придумаем свой / Роман Прудников (2ГИС)
Ваш CSS нас не устраивает, мы придумаем свой / Роман Прудников (2ГИС)Ваш CSS нас не устраивает, мы придумаем свой / Роман Прудников (2ГИС)
Ваш CSS нас не устраивает, мы придумаем свой / Роман Прудников (2ГИС)Ontico
 
Михаил Трошев — CSS: Систематизация базовых знаний
Михаил Трошев — CSS: Систематизация базовых знанийМихаил Трошев — CSS: Систематизация базовых знаний
Михаил Трошев — CSS: Систематизация базовых знанийYandex
 
Ускорение frontend-разработки с помощью Haml, Sass, Compass
Ускорение frontend-разработки с помощью Haml, Sass, CompassУскорение frontend-разработки с помощью Haml, Sass, Compass
Ускорение frontend-разработки с помощью Haml, Sass, CompassAndrey Sitnik
 
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....rit2011
 
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....rit2011
 
Документ: от печати до выписок из базы данных. От аппликативного программиров...
Документ: от печати до выписок из базы данных. От аппликативного программиров...Документ: от печати до выписок из базы данных. От аппликативного программиров...
Документ: от печати до выписок из базы данных. От аппликативного программиров...Marcus Akoev
 
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)Ontico
 
пользовательские свойства как основа архитектуры CSS
пользовательские свойства как основа архитектуры CSSпользовательские свойства как основа архитектуры CSS
пользовательские свойства как основа архитектуры CSSZigzag_McQuack
 
CSSO — сжимаем CSS
CSSO — сжимаем CSSCSSO — сжимаем CSS
CSSO — сжимаем CSSFDConf
 
CSSO — сжимаем CSS (часть 2)
CSSO — сжимаем CSS (часть 2)CSSO — сжимаем CSS (часть 2)
CSSO — сжимаем CSS (часть 2)Roman Dvornov
 

Similar a Sass&less на Drupal-слёте (20)

Front-end разработка. Compass
Front-end разработка. CompassFront-end разработка. Compass
Front-end разработка. Compass
 
Андрей Тюпа Оптимизация верстки Sass + Compass framework
Андрей Тюпа Оптимизация верстки Sass + Compass frameworkАндрей Тюпа Оптимизация верстки Sass + Compass framework
Андрей Тюпа Оптимизация верстки Sass + Compass framework
 
010 презентация less и адаптивный дизайн
010 презентация   less и адаптивный дизайн010 презентация   less и адаптивный дизайн
010 презентация less и адаптивный дизайн
 
Стажировка-2015. Разработка. Занятие 13. Сборка фронтенда
Стажировка-2015. Разработка. Занятие 13. Сборка фронтендаСтажировка-2015. Разработка. Занятие 13. Сборка фронтенда
Стажировка-2015. Разработка. Занятие 13. Сборка фронтенда
 
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
Роман Комаров "CSS-препроцессоры: из каменного века — в будущее"
 
CSS. Практика
CSS. ПрактикаCSS. Практика
CSS. Практика
 
Вёрстка в стиле Ruby: HAML, SASS, Compass, CoffeeScript, Jammit
Вёрстка в стиле Ruby: HAML, SASS, Compass, CoffeeScript, JammitВёрстка в стиле Ruby: HAML, SASS, Compass, CoffeeScript, Jammit
Вёрстка в стиле Ruby: HAML, SASS, Compass, CoffeeScript, Jammit
 
Владимир Гриненко "Инструменты фронтенд-разработчика"
Владимир Гриненко "Инструменты фронтенд-разработчика"Владимир Гриненко "Инструменты фронтенд-разработчика"
Владимир Гриненко "Инструменты фронтенд-разработчика"
 
Ваш CSS нас не устраивает, мы придумаем свой / Роман Прудников (2ГИС)
Ваш CSS нас не устраивает, мы придумаем свой / Роман Прудников (2ГИС)Ваш CSS нас не устраивает, мы придумаем свой / Роман Прудников (2ГИС)
Ваш CSS нас не устраивает, мы придумаем свой / Роман Прудников (2ГИС)
 
Михаил Трошев — CSS: Систематизация базовых знаний
Михаил Трошев — CSS: Систематизация базовых знанийМихаил Трошев — CSS: Систематизация базовых знаний
Михаил Трошев — CSS: Систематизация базовых знаний
 
Ускорение frontend-разработки с помощью Haml, Sass, Compass
Ускорение frontend-разработки с помощью Haml, Sass, CompassУскорение frontend-разработки с помощью Haml, Sass, Compass
Ускорение frontend-разработки с помощью Haml, Sass, Compass
 
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
 
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
ускорение Front end разработки с помощью haml, sass и compass. андрей ситник....
 
CSS
CSSCSS
CSS
 
Документ: от печати до выписок из базы данных. От аппликативного программиров...
Документ: от печати до выписок из базы данных. От аппликативного программиров...Документ: от печати до выписок из базы данных. От аппликативного программиров...
Документ: от печати до выписок из базы данных. От аппликативного программиров...
 
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
 
пользовательские свойства как основа архитектуры CSS
пользовательские свойства как основа архитектуры CSSпользовательские свойства как основа архитектуры CSS
пользовательские свойства как основа архитектуры CSS
 
CSSO — сжимаем CSS
CSSO — сжимаем CSSCSSO — сжимаем CSS
CSSO — сжимаем CSS
 
CSSO — сжимаем CSS (часть 2)
CSSO — сжимаем CSS (часть 2)CSSO — сжимаем CSS (часть 2)
CSSO — сжимаем CSS (часть 2)
 
Css_pres
Css_presCss_pres
Css_pres
 

Más de zabej

Map of tomorrow. Pecha kucha. 2019
Map of tomorrow. Pecha kucha. 2019Map of tomorrow. Pecha kucha. 2019
Map of tomorrow. Pecha kucha. 2019zabej
 
Data detox. Пазабаўляемся ад таксічных дадзеных
Data detox. Пазабаўляемся ад таксічных дадзеныхData detox. Пазабаўляемся ад таксічных дадзеных
Data detox. Пазабаўляемся ад таксічных дадзеныхzabej
 
Культура працы з git i github
Культура працы з git i githubКультура працы з git i github
Культура працы з git i githubzabej
 
Модуль прыёму ахвяраванняў Doika
Модуль прыёму ахвяраванняў DoikaМодуль прыёму ахвяраванняў Doika
Модуль прыёму ахвяраванняў Doikazabej
 
Donation module Doika
Donation module DoikaDonation module Doika
Donation module Doikazabej
 
Майстар-клас. Як стварыць лагатып?
Майстар-клас. Як стварыць лагатып?Майстар-клас. Як стварыць лагатып?
Майстар-клас. Як стварыць лагатып?zabej
 
Як эфектыўна працаваць з дызайнерам і скараціць час на дызайн?
Як эфектыўна працаваць з дызайнерам і скараціць час на дызайн?Як эфектыўна працаваць з дызайнерам і скараціць час на дызайн?
Як эфектыўна працаваць з дызайнерам і скараціць час на дызайн?zabej
 
Роль дизайнера в команде
Роль дизайнера в командеРоль дизайнера в команде
Роль дизайнера в командеzabej
 
Как получить дизайн, который понравиться организации?
Как получить дизайн, который понравиться организации?Как получить дизайн, который понравиться организации?
Как получить дизайн, который понравиться организации?zabej
 
Адкрытыя бізнэс-мадэлі на аснове лічбавага агульнага
Адкрытыя бізнэс-мадэлі на аснове лічбавага агульнагаАдкрытыя бізнэс-мадэлі на аснове лічбавага агульнага
Адкрытыя бізнэс-мадэлі на аснове лічбавага агульнагаzabej
 
Commonification Sharing and Creative Commons. Alexandros Nousias
Commonification Sharing and Creative Commons. Alexandros Nousias Commonification Sharing and Creative Commons. Alexandros Nousias
Commonification Sharing and Creative Commons. Alexandros Nousias zabej
 
Вікі-летнік 2017. Прэзентацыя ідэі
Вікі-летнік 2017. Прэзентацыя ідэіВікі-летнік 2017. Прэзентацыя ідэі
Вікі-летнік 2017. Прэзентацыя ідэіzabej
 
Гісторыя Творчых Суполак і планы на 2017 год
Гісторыя Творчых Суполак і планы на 2017 годГісторыя Творчых Суполак і планы на 2017 год
Гісторыя Творчых Суполак і планы на 2017 годzabej
 
Лічбавая Майстэрня. V.1.1
Лічбавая Майстэрня. V.1.1Лічбавая Майстэрня. V.1.1
Лічбавая Майстэрня. V.1.1zabej
 
Лічбавая Майстэрня
Лічбавая МайстэрняЛічбавая Майстэрня
Лічбавая Майстэрняzabej
 
Прэзентацыя вікідапаможніка, верасень, 2015
Прэзентацыя вікідапаможніка, верасень, 2015Прэзентацыя вікідапаможніка, верасень, 2015
Прэзентацыя вікідапаможніка, верасень, 2015zabej
 
Вікі-дапаможнік. Кіруй ведамі
Вікі-дапаможнік. Кіруй ведаміВікі-дапаможнік. Кіруй ведамі
Вікі-дапаможнік. Кіруй ведаміzabej
 
Falanster. Presentation of activity. 2015
Falanster. Presentation of activity. 2015Falanster. Presentation of activity. 2015
Falanster. Presentation of activity. 2015zabej
 
Фаланстер. Презентация деятельности. 2015
Фаланстер. Презентация деятельности. 2015Фаланстер. Презентация деятельности. 2015
Фаланстер. Презентация деятельности. 2015zabej
 
Фаланстэр. Прэзентацыя дзейнасці. 2015
Фаланстэр. Прэзентацыя дзейнасці. 2015Фаланстэр. Прэзентацыя дзейнасці. 2015
Фаланстэр. Прэзентацыя дзейнасці. 2015zabej
 

Más de zabej (20)

Map of tomorrow. Pecha kucha. 2019
Map of tomorrow. Pecha kucha. 2019Map of tomorrow. Pecha kucha. 2019
Map of tomorrow. Pecha kucha. 2019
 
Data detox. Пазабаўляемся ад таксічных дадзеных
Data detox. Пазабаўляемся ад таксічных дадзеныхData detox. Пазабаўляемся ад таксічных дадзеных
Data detox. Пазабаўляемся ад таксічных дадзеных
 
Культура працы з git i github
Культура працы з git i githubКультура працы з git i github
Культура працы з git i github
 
Модуль прыёму ахвяраванняў Doika
Модуль прыёму ахвяраванняў DoikaМодуль прыёму ахвяраванняў Doika
Модуль прыёму ахвяраванняў Doika
 
Donation module Doika
Donation module DoikaDonation module Doika
Donation module Doika
 
Майстар-клас. Як стварыць лагатып?
Майстар-клас. Як стварыць лагатып?Майстар-клас. Як стварыць лагатып?
Майстар-клас. Як стварыць лагатып?
 
Як эфектыўна працаваць з дызайнерам і скараціць час на дызайн?
Як эфектыўна працаваць з дызайнерам і скараціць час на дызайн?Як эфектыўна працаваць з дызайнерам і скараціць час на дызайн?
Як эфектыўна працаваць з дызайнерам і скараціць час на дызайн?
 
Роль дизайнера в команде
Роль дизайнера в командеРоль дизайнера в команде
Роль дизайнера в команде
 
Как получить дизайн, который понравиться организации?
Как получить дизайн, который понравиться организации?Как получить дизайн, который понравиться организации?
Как получить дизайн, который понравиться организации?
 
Адкрытыя бізнэс-мадэлі на аснове лічбавага агульнага
Адкрытыя бізнэс-мадэлі на аснове лічбавага агульнагаАдкрытыя бізнэс-мадэлі на аснове лічбавага агульнага
Адкрытыя бізнэс-мадэлі на аснове лічбавага агульнага
 
Commonification Sharing and Creative Commons. Alexandros Nousias
Commonification Sharing and Creative Commons. Alexandros Nousias Commonification Sharing and Creative Commons. Alexandros Nousias
Commonification Sharing and Creative Commons. Alexandros Nousias
 
Вікі-летнік 2017. Прэзентацыя ідэі
Вікі-летнік 2017. Прэзентацыя ідэіВікі-летнік 2017. Прэзентацыя ідэі
Вікі-летнік 2017. Прэзентацыя ідэі
 
Гісторыя Творчых Суполак і планы на 2017 год
Гісторыя Творчых Суполак і планы на 2017 годГісторыя Творчых Суполак і планы на 2017 год
Гісторыя Творчых Суполак і планы на 2017 год
 
Лічбавая Майстэрня. V.1.1
Лічбавая Майстэрня. V.1.1Лічбавая Майстэрня. V.1.1
Лічбавая Майстэрня. V.1.1
 
Лічбавая Майстэрня
Лічбавая МайстэрняЛічбавая Майстэрня
Лічбавая Майстэрня
 
Прэзентацыя вікідапаможніка, верасень, 2015
Прэзентацыя вікідапаможніка, верасень, 2015Прэзентацыя вікідапаможніка, верасень, 2015
Прэзентацыя вікідапаможніка, верасень, 2015
 
Вікі-дапаможнік. Кіруй ведамі
Вікі-дапаможнік. Кіруй ведаміВікі-дапаможнік. Кіруй ведамі
Вікі-дапаможнік. Кіруй ведамі
 
Falanster. Presentation of activity. 2015
Falanster. Presentation of activity. 2015Falanster. Presentation of activity. 2015
Falanster. Presentation of activity. 2015
 
Фаланстер. Презентация деятельности. 2015
Фаланстер. Презентация деятельности. 2015Фаланстер. Презентация деятельности. 2015
Фаланстер. Презентация деятельности. 2015
 
Фаланстэр. Прэзентацыя дзейнасці. 2015
Фаланстэр. Прэзентацыя дзейнасці. 2015Фаланстэр. Прэзентацыя дзейнасці. 2015
Фаланстэр. Прэзентацыя дзейнасці. 2015
 

Sass&less на Drupal-слёте

  • 2. проблемы css ● структура отсутствует ● нельзя быстро поменять код ● необходимо писать костыли ● производительность
  • 3. методы борьбы ● переменные ● области видимости ● повторы кода в отдельные блоки
  • 4. сss != <язык программирования>
  • 6. холивар LESS SASS ● проще ● больше возможностей ● поддержка javascript ● совместимый с CSS
  • 8. SCSS – диалект SASS SASS SCSS $blue: #3bbfce $blue: #3bbfce; $margin: 16px $margin: 16px; .content-navigation .content-navigation { border-color: $blue border-color: $blue; color: darken($blue, 9%) color: darken($blue, 9%); } .border { .border padding: $margin / 2; padding: $margin / 2 margin: $margin / 2; margin: $margin / 2 border-color: $blue; } border-color: $blue
  • 9. compass ● кросcбраузерные стили ● основа - SASS
  • 11. вложенные условия LESS CSS #header { #header h1 { font-size: 26px; h1 { font-weight: bold; font-size: 26px; } font-weight: bold; #header p { } font-size: 12px; p { font-size: 12px; } a { text-decoration: none; #header p a { text-decoration: none; &:hover { border-width: 1px } } } #header p a:hover { } border-width: 1px; } }
  • 12. вложенные условия SСSS CSS #navbar { #navbar { width: 80%; width: 80%; height: 23px; height: 23px; } ul { list-style-type: #navbar ul { none; } list-style-type: li { none; } float: left; #navbar li { a { font-weight: bold; } float: left; } } #navbar li a { } font-weight: bold; }
  • 13. родительские ссылки LESS & SCSS CSS a { a { color: #ce4dd6; color: #ce4dd6; } &:hover { a:hover { color: #ffb3ff; } color: #ffb3ff; } &:visited { a:visited { color: #c458cb; } color: #c458cb; } }
  • 14. переменные LESS CSS @color: #4D926F; #header { #header { color: #4D926F; color: @color; } } h2 { h2 { color: #4D926F; color: @color; } }
  • 15. переменные SСSS CSS $main-color: #ce4dd6; #navbar { $style: solid; border-bottom-color: #ce4dd6; #navbar { border-bottom-style: border-bottom: { solid; } color: $main-color; a { style: $style; } } color: #ce4dd6;} a { a:hover { color: $main-color; border-bottom: solid 1px; } &:hover { border-bottom: $style 1px; } }
  • 16. примеси LESS CSS .rounded-corners (@radius: 5px) { #header { -webkit-border-radius: @radius; -webkit-border-radius: 5px; -moz-border-radius: 5px; -moz-border-radius: @radius; -ms-border-radius: 5px; -ms-border-radius: @radius; -o-border-radius: 5px; -o-border-radius: @radius; border-radius: 5px; } border-radius: @radius; #footer { } -webkit-border-radius: 10px; -moz-border-radius: 10px; #header { .rounded-corners; } -ms-border-radius: 10px; #footer { .rounded-corners(10px); } -o-border-radius: 10px; border-radius: 10px; }
  • 17. примеси SСSS CSS @mixin rounded($side, $radius: 10px) { #navbar li { border-#{$side}-radius: $radius; border-top-radius: 10px; -moz-border-radius-top: 10px; -moz-border-radius-#{$side}: $radius; -webkit-border-top-radius: 10px; } -webkit-border-#{$side}-radius: #footer { $radius; border-top-radius: 5px; } -moz-border-radius-top: 5px; -webkit-border-top-radius: 5px; } #navbar li { @include rounded(top); } #sidebar { #footer { @include rounded(top, 5px); } border-left-radius: 8px; #sidebar { @include rounded(left, 8px); } -moz-border-radius-left: 8px; -webkit-border-left-radius: 8px; }
  • 18. функции и операторы LESS CSS @the-border: 1px; #header { @base-color: #111; color: #333; @red: #842210; border-left: 1px; #header { color: (@base-color * 3); border-right: 2px; border-left: @the-border; } border-right: (@the-border * 2); #footer { } color: #114411; #footer { border-color: color: (@base-color + #003300); #7d2717; border-color: desaturate(@red, 10%); } }
  • 19. функции и операторы SСSS CSS $grid-width: 40px; #sidebar { $gutter-width: 10px; width: 240px; } @function grid-width($n) { @return $n * $grid-width + ($n - 1) * $gutter-width; } #sidebar { width: grid- width(5); }
  • 20. разные фичи ● условия ● циклы ● перегрузка функций ● интерполяция переменных ● функции работы с цветом ● пространства имен ● режимы вывода
  • 22. консоль ● Node.js npm install less sudo apt get install node-less ● Ruby gem gem install sass gem install compass
  • 23. модули ● LESS http://drupal.org/project/less ● SASSy http://drupal.org/project/sassy ● SASS http://drupal.org/project/sass
  • 24. итоги ● удобно ● несложно ● доступно ● будет в D8
  • 25. ссылки ● http://lesscss.org/ ● sass-lang.com ● http://compass-style.org/ ● http://drupal.org/project/compass ● http://drupal.org/project/compass ● http://drupal.org/project/compass