Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Вы это видите? SASS переопределяет селекторы, и это более эффективный путь.
Победитель: SASS
Для компиляции созданных вами файлов стоит использовать такое приложение как CodeKit. Вы должны знать основы Ruby или командной строки или еще чего-то другого...1. LESS можно вообще не компилировать отдельно.
Вы когда-нибудь пробовали этот «не компилировать отдельно» использовать на продакшене в крупном проекте?
.some-parent-class {
&__some-modificator {
color: red;
}
}
.some-parent-class__some-modificator {
color: red;
}
&:hover
&:first-child
&.another_class
object =
html:
background: 'red'
body:
color: 'rgb(255, 255, 255)'
'div > p':
color: 'green'
border: '#000008'
input :
border : '1px solid #110011'
html {
background: red;
}
html body {
color: #FFF;
}
html body div > p {
color: green;
border: #000008;
}
input {
border: #101;
}
file = fs.createWriteStream 'file.css',
flags: 'a'
encoding: 'utf-8'
mode: 0666
file.on 'error', (error) ->
console.error error
file.write to.toCSS object
file.end ->
console.log to.toCSS object
html:
background: ['#111', '#222', '#333', '#444', '#555', '#666', '#777'][today]
color:
if 1 > 2
'red'
else
'green'
А синтаксис вашей либы — вылитый sass
html: {
background: {
['#111', '#222', '#333', '#444', '#555', '#666', '#777'][today]
},
color: {
if 1 > 2
'red'
else
'green'
}
}
Если писать стили в отдельном файле, то название объекта писать необязательно!
Кавычки после двоеточия, двоеточие после селектора.
@ mixin image-selectable-decor {
@ include transition(background-color, 0.2s); <- миксин для кроссброузерного css3 из compass фреймворка
background-color: $default-image-background;
&:hover {
background-color: $default-image-hover-background;
}
&:active {
background-color: $default-image-active-background;
}
}
.news, .articles {
@ include default-info-block;
/* какое-то свойство из default-info-block тут может быть переопределено */
font-size: 13px;
}
/* а какое-то свойство лишь для одного класса изменено */
.news {
color: red;
}
SASS против LESS