Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
color #a50c5b - 50sat /* decrease saturation by 50% */ background-color #a50c5b + 50lt /* make color lighter by 50 percent */Вот это ад.
3.5 + 2 + 3 == 3 + 2 + 3.5#000 + 10r + 10lt != #000 + 10lt + 10rhsla(45, 60%, 20%, 1) + 10lt не работает. И rgb(1,1,1) + rgb(1,1,1) тоже.#000 + 10r + 10lt != #000 + 10lt + 10r
rgb(1,1,1) + rgb(1,1,1)
hsla(45, 60%, 20%, 1) + 10lt
@mixin filter-grayscale(percent)
-webkit-filter: grayscale($percent);
-ms-filter: grayscale($percent);
-o-filter: grayscale($percent);
filter: grayscale($percent);
@mixin border-radius(topleft, topright)
-webkit-border-radius $topleft $topright 4px 5px
border-radius $arguments
html {
-ms-width: 50px !important;
-moz-width: 50px !important;
width: 50px !important;
}-o-filter, -webkit-border-radius в 2015 году, -ms-width? Писать префиксы руками сегодня — это очень странное решение. Но то, что вы их выносите в абстракцию, ничего, по сути, не меняет — они всё равно написаны руками. Префиксы нужно добавлять только а) существующие и б) на основе статистики — и это давно уже делает Автопрефиксер. То есть префиксы вообще не нужно писать, нужно только пропускать через него CSS-файл на выходе — он сам знает что нужно, что актуально и как правильно на основе базы Can I use. И конкурировать с этим, даже в рамках велосипеда, я бы не стал.<div class="button"> и прочие безумства. Так что осторожнее. А что касается Автопрефиксера, он позволяет гибко указывать любые целевые версии браузеров и, если нужно, форсить прямо в коде нужные заплатки и префиксы, почитайте об этом в документации.Ну, конечно же, мне пришлось написать небольшой сайтик для презентации своего продукта (вы уже догадались, какой язык программирования был выбран мной для этой цели?).
Превышен Лимит Процессорной Памяти
После двухдневного (а может и меньшего) просмотра результатов с гугла, я ничего интересного для себя не нашел.
border-radius с префиксами в примере — полный ужас :).html
height 100%
body
color #777
height 100%
font-family: 'Open Sans', sans-serif;
.wrapper
position relative
min-height 100%
#header
color #fff
background-color rgba(0, 0, 0, 60%)
#logo
float left
.title
padding 4px 5px
font-weight bold
font-size 14pt
#main-menu
overflow hidden
ul
float right
li
float left
padding 8px 6px
html {
height: 100%
}
html body {
color: #777777;
height: 100%;
font-family: "Open Sans",sans-serif
}
html body .wrapper {
position: relative;
min-height: 100%
}
html body .wrapper #header {
color: #ffffff;
background-color: rgba(0, 0, 0, 0.6)
}
html body .wrapper #header #logo {
float: left
}
html body .wrapper #header #logo .title {
padding: 4px 5px;
font-weight: bold;
font-size: 14pt
}
html body .wrapper #header #main-menu {
overflow: hidden
}
html body .wrapper #header #main-menu ul {
float: right
}
html body .wrapper #header #main-menu ul li {
float: left;
padding: 8px 6px
}
html body .wrapper #header #main-menu ul li
получаешь совсем другие конечные селекторы.
Это напрямую влияет на специфичность селекторов.
Это нестандартный взгляд на вещи со своими плюсами и минусами.
body {
a {
color: red;
&:visited {
color: blue;
}
.some-parent & {
font-weight: bold;
}
}
}
body {
a {
color: red;
&:visited {
color: blue;
}
.some-parent & {
font-weight: bold;
}
}
}
Рассказ о том, как написать свой собственный CSS препроцессор за 9 месяцев