Примечание: Использование Меньше Примеси для поставщика префиксов не является хорошей практикой и этот ответ не делает никаких попыток, чтобы рекомендовать его. Он дает только прямой ответ на заданный вопрос. Если вы заинтересованы в том, чтобы узнать рекомендуемый подход к префиксам поставщиков, возьмите добычу у answer in this thread Bass Jobsen.
Почему ваш вызов mixin не работает?
Всякий раз, когда выполняется вызов mixin, Less только вызывает mixin, если все параметры имеют значение (либо значение по умолчанию, либо значение, переданное в вызове mixin).
В этом случае mixstock translate
mixin имеет 2 параметра (без значений по умолчанию), а вызов mixin имеет только один параметр. Из-за этого mixin никогда не будет вызван/обработан.
Какое решение возникло из-за проблемы?
Чтобы преодолеть это, вы могли бы просто передать 0
(или 0%
) для параметра @x
как
.translate(@x; @y) {
-webkit-transform: translate(@x, @y);
-ms-transform: translate(@x, @y); // IE9 only
-o-transform: translate(@x, @y);
transform: translate(@x, @y);
}
div{
.translate(@x: 0%;@y: 50%);
}
Это будет производить вывод, который, по существу, эквивалентно трансляции только по оси Y (как можно увидеть в this simple sample).
Ниже является выход
div {
-webkit-transform: translate(0%, 50%);
-ms-transform: translate(0%, 50%);
-o-transform: translate(0%, 50%);
transform: translate(0%, 50%);
}
и это эквивалентно
div {
-webkit-transform: translateY(50%);
-ms-transform: translateY(50%);
-o-transform: translateY(50%);
transform: translateY(50%);
}
Прошу прощения, я ответил на вопрос и только тогда понял, что я мог бы полностью вас неправильно понять, поскольку вижу «-50%» на месте и «50%» в другом с утверждением, которое вы хотите добавить 50%. Вы хотите добавить перевод в уже переведенный элемент (или), мое решение касается вашего вопроса? – Harry
Это прекрасно, я понял, что мне просто нужен пример реальной жизни, и вы предоставили его. Пятно на !! Благодаря!! –