En caso de que desee múltiples argumentos y proveedor prefijada, al igual que el escenario de barbecho:
@include transition(transform .5s linear, width .5s linear)
esperado
-webkit-transition: -webkit-transform 0.5s linear, width 0.5s linear;
-moz-transition: -moz-transform 0.5s linear, width 0.5s linear;
-ms-transition: -ms-transform 0.5s linear, width 0.5s linear;
-o-transition: -o-transform 0.5s linear, width 0.5s linear;
transition: transform 0.5s linear, width 0.5s linear;
te sugiere esto Mixin, he encontrado en Meaningless Writing.
Código
@function prefix($property, $prefixes: (webkit moz o ms)) {
$vendor-prefixed-properties: transform background-clip background-size;
$result:();
@each $prefix in $prefixes {
@if index($vendor-prefixed-properties, $property) {
$property: -#{$prefix}-#{$property}
}
$result: append($result, $property);
}
@return $result;
}
@function trans-prefix($transition, $prefix: moz) {
$prefixed:();
@each $trans in $transition {
$prop-name: nth($trans, 1);
$vendor-prop-name: prefix($prop-name, $prefix);
$prop-vals: nth($trans, 2);
$prefixed: append($prefixed, ($vendor-prop-name $prop-vals), comma);
}
@return $prefixed;
}
@mixin transition($values...) {
$transitions:();
@each $declaration in $values {
$prop: nth($declaration, 1);
$prop-opts:();
$length: length($declaration);
@for $i from 2 through $length {
$prop-opts: append($prop-opts, nth($declaration, $i));
}
$trans: ($prop, $prop-opts);
$transitions: append($transitions, $trans, comma);
}
-webkit-transition: trans-prefix($transitions, webkit);
-moz-transition: trans-prefix($transitions, moz);
-o-transition: trans-prefix($transitions, o);
transition: $values;
}
¿Cómo esta no es la respuesta aceptada? – troelskn
@troelskn Publiqué mi respuesta después de que Joseph's y su ya habían sido seleccionados como LA respuesta. Agregué el mío porque hice la misma pregunta y encontré la respuesta en la documentación de SASS y esperaba que pudiera ahorrarle a algunos desarrolladores el problema de lidiar con paréntesis superfluos :) –
Sí, parece que esta opción se agregó en 2012, después de la pregunta y mi respuesta fue dada. http://chriseppstein.github.io/blog/2012/08/23/sass-3-2-is-released/ –