تعطيل LESS-CSS حساب الكتابة فوق ()


Answers

وبصرف النظر عن استخدام قيمة هرب كما هو موضح في إجابتي الأخرى ، فمن الممكن أيضًا إصلاح هذه المشكلة من خلال تمكين إعداد Strict Math .

باستخدام حساب رياضي صارم ، ستتم معالجة الرياضيات فقط التي توجد داخل أقواس غير ضرورية ، بحيث يتم تنفيذ التعليمات البرمجية:

width: calc(100% - 200px);

ستعمل كما هو متوقع مع تمكين الخيار الرياضيات صارمة.

ومع ذلك ، لاحظ أنه يتم تطبيق Strict Math عالميًا ، ليس فقط داخل calc() . هذا يعني ، إذا كان لديك:

font-size: 12px + 2px;

لن تتم معالجة الرياضيات بعد الآن - سيتم إخراج font-size: 12px + 2px وهو ، بطبيعة الحال ، CSS غير صالح. سيكون عليك أن تلتف جميع الرياضيات التي يجب معالجتها بواسطة أقواس أقل (سابقا غير ضرورية):

font-size: (12px + 2px);

Strict Math هو خيار جيد يجب أخذه في الاعتبار عند بدء مشروع جديد ، وإلا قد تضطر إلى إعادة كتابة جزء جيد من قاعدة الكود. بالنسبة لحالات الاستخدام الأكثر شيوعًا ، يكون أسلوب السلسلة الهروب الموضح في الإجابة الأخرى أكثر ملاءمة.

Question

هذا السؤال لديه بالفعل إجابة هنا:

الآن أنا أحاول القيام بذلك في CSS3 في رمز LESS الخاص بي:

width: calc(100% - 200px);

ومع ذلك ، عندما يقوم LESS بتجميعها ، يتم إخراج هذا:

width: calc(-100%);

هل هناك طريقة لإخبار LESS بعدم تجميعها بهذه الطريقة وإخراجها بشكل طبيعي؟




مثال لسلسلة هربت مع متغير:

@some-variable-height: 10px;

...

div {
    height: ~"calc(100vh - "@some-variable-height~")";
}

يجمع ل

div {
    height: calc(100vh - 10px );
}