Existe-t-il un moyen d’utiliser des variables dans Less pour l’opérateur ~, comme ~ “calc (100% – @spacing)”;

Existe-t-il un moyen d’utiliser des variables dans less ~ operator, comme

 ~"calc(70% - @spacing)"; 

Quand je l’ai essayé, il ne fonctionne qu’avec des valeurs statiques comme

  ~"calc(70% - 10px)"; 

Puis-je obtenir la chaîne à évaluer avant d’être définie comme une propriété.

Pour désactiver le calcul effectué automatiquement par LESS lors de la découverte de - entre deux valeurs numériques tout en pouvant utiliser des variables, vous pouvez écrire l’un des éléments suivants:

1) N’échappe que l’opérateur qui déclenche le calcul et utilise la variable comme tu le fais normalement

 @padding: 20px; body { padding: calc(100% ~"-" @padding); } 

2) Echappe à l’expression entière et interpole la variable avec la notation @{padding}

 @padding: 20px; body { padding: ~"calc(100% - @{padding})"; } 

Je préfère la deuxième version, car elle ressemble aux littéraux de template de javascript et semble un peu plus propre, mais ça marche très bien.

Les deux solutions désactivent le calcul automatique moins et comstacknt au résultat correct:

 body { padding: calc(100% - 20px); }