ฉันได้รับข้อผิดพลาดทางไวยากรณ์สำหรับมิกซ์อินนี้:
.vendors(@statement){
@statement;
-moz-@statement;
-webkit-@statement;
}
มีวิธีใดในการทำเช่นนี้ หรือตัวแปรมิกซ์อินต้องอยู่ทางด้านขวาของ :
ฉันได้รับข้อผิดพลาดทางไวยากรณ์สำหรับมิกซ์อินนี้:
.vendors(@statement){
@statement;
-moz-@statement;
-webkit-@statement;
}
มีวิธีใดในการทำเช่นนี้ หรือตัวแปรมิกซ์อินต้องอยู่ทางด้านขวาของ :
เนื่องจาก Less v2 คุณสามารถใช้ ปลั๊กอินคำนำหน้าอัตโนมัติ เพื่อนำหน้าคุณสมบัติของคุณ ซึ่งดูเหมือนว่าจะเป็น ทางเลือกที่ดีกว่า ปลั๊กอินคำนำหน้าอัตโนมัติเพิ่มคำนำหน้าเบราว์เซอร์โดยใช้ประโยชน์จาก ตัวประมวลผลคำนำหน้าอัตโนมัติ สำหรับการคอมไพล์ฝั่งไคลเอ็นต์ (ในเบราว์เซอร์) คุณสามารถใช้ -prefixfree ได้
ตามที่กล่าวไว้แล้วโดย @ScottS ที่นี่ คุณสามารถใช้การแก้ไขตัวแปรในตัวเลือกได้ตั้งแต่ Less v1.6 ซึ่งช่วยให้คุณทำ:
.prefix(@property, @value)
{
-webkit-@{property}:@value;
@{property}:@value;
}
selector {
.prefix(property,value);
}
เอาท์พุต:
selector {
-webkit-property: value;
property: value;
}
คุณควรอ่าน: ฉันกำลังทำให้ LESS ของฉันซับซ้อนเกินไปสำหรับคำนำหน้าผู้ขายหรือไม่
นั่นเป็นคำตอบที่ง่อย แต่ฉันไม่คิดว่าจะเป็นไปได้
ไม่มีทางที่จะทำเช่นนั้นได้ แต่มีวิธีแก้ไข ถ้ามันได้ผลฉันคิดว่ามันจะเป็นดังนี้:
.vendors(@prop, @val){
~"-webkit-@{prop}:@{val}";
}
หมายเหตุ: สิ่งนี้ใช้ไม่ได้
ต่อไปนี้เป็นการสนทนาที่ยาวมากในหัวข้อ: https://github.com/cloudhead/less.js/pull/698
คุณอาจใช้ไลบรารีนี้ได้: less-properties