Стилус-миксины, использующие собственные CSS3-миксины?

Я создаю миксин, который позволит мне создавать стили без префиксов для transform: rotate(45deg). Проблема в том, что я понятия не имею, как это сделать с правильным синтаксисом Stylus. Вот что у меня есть на данный момент:

transform-rotate()
    -webkit-transform: rotate(arguments)
    -moz-transform: rotate(arguments)
    -o-transform: rotate(arguments)
    -ms-transform: rotate(arguments)
    transform: rotate(arguments)

И затем я хотел бы вызвать это в моем .styl листе, используя следующее:

transform-rotate(45deg)

Но когда я это сделаю, я получаю следующую ошибку:

Cannot call method 'map' of undefined

Я думаю, проблема в том, что Stylus пытается рассматривать собственный миксин CSS3 rotate() как собственный миксин, и когда он пытается, он не может найти реализацию rotate(). Я не совсем уверен, но это моя первоначальная мысль.

Как мне это записать, чтобы он правильно компилировался? Любые идеи очень приветствуются. Заранее спасибо.


person tennisgent    schedule 06.11.2013    source источник


Ответы (1)


Вам не нужны скобки со стилусом, проблема решена!

transform-rotate
    -webkit-transform rotate arguments
    -moz-transform rotate arguments
    -o-transform rotate arguments
    -ms-transform rotate arguments
    transform rotate arguments

И я бы посоветовал вам использовать Nib, плагин для стилуса, который обрабатывает префикс браузера: http://visionmedia.github.io/nib/

person Akaryatrh    schedule 19.12.2013
comment
Спасибо за ответ. Это намного проще, чем я пытался это сделать. Сейчас мы фактически перешли на SASS, но я прислушусь к вашему совету, если я когда-нибудь буду работать со стилусом. Спасибо. - person tennisgent; 19.12.2013
comment
Пожалуйста, но, честно говоря, я использовал LESS до использования Stylus, и он настолько чист для чтения и кода, что я, конечно же, не отступлю :) - person Akaryatrh; 19.12.2013
comment
Я не могу заставить это работать в стилусе - person geoidesic; 28.01.2021