กลับไปหน้าบทความ

อ่าน 5 นาที

น้อยกว่า (ภาษาสำหรับจัดรูปแบบเอกสาร)

Less ( Leaner Style Sheets ; บางครั้งเขียนเป็น LESS ) เป็น ภาษาสไตล์ชีตพรี โปรเซสเซอร์ แบบไดนามิก ที่สามารถคอมไพล์เป็น Cascading Style Sheets (CSS)...

น้อยกว่า (ภาษาสำหรับจัดรูปแบบเอกสาร)

น้อย
ออกแบบโดยอเล็กซิส เซลลิเยร์
นักพัฒนาอเล็กซิส เซลเลอร์, มิทรี ฟาเดเยฟ
ปรากฏครั้งแรก2009 ( 2009 )
เวอร์ชันเสถียร
4.6.7 [ 1 ] แก้ไขข้อมูลนี้บนวิกิดาต้า / 22 มิถุนายน 2026 ( 22 มิถุนายน 2569 )
วินัยในการพิมพ์พลวัต
ภาษาการใช้งานโค้ด JavaScript
โอเอสข้ามแพลตฟอร์ม
ใบอนุญาตใบอนุญาต Apache 2.0
นามสกุลไฟล์.น้อย
เว็บไซต์lesscss .org
ได้รับอิทธิพลจาก
CSS , Sass
ได้รับอิทธิพล
Sass , Less Framework, Bootstrap (v3)

Less ( Leaner Style Sheets ; บางครั้งเขียนเป็นLESS ) เป็นภาษาสไตล์ชีตพรีโปรเซสเซอร์ แบบไดนามิก ที่สามารถคอมไพล์เป็นCascading Style Sheets (CSS) และทำงานบนฝั่งไคลเอ็นต์หรือฝั่งเซิร์ฟเวอร์ได้[ 2 ] Less ออกแบบโดย Alexis Sellier ได้รับอิทธิพลจากSassและมีอิทธิพลต่อไวยากรณ์ "SCSS" รุ่นใหม่ของ Sass ซึ่งปรับใช้ไวยากรณ์การจัดรูปแบบบล็อกที่คล้ายกับ CSS [ 3 ] Less เป็น โครงการ โอเพ นซอร์ส เวอร์ชันแรกเขียนด้วยRubyอย่างไรก็ตาม ในเวอร์ชันต่อมา การใช้ Ruby ถูกยกเลิกและแทนที่ด้วยJavaScriptไวยากรณ์การเยื้องของ Less เป็นเมตาภาษาแบบซ้อนกัน เนื่องจาก CSS ที่ถูกต้องคือโค้ด Less ที่ ถูกต้องด้วย ความหมายเดียวกันLess มีกลไกต่อไปนี้: ตัวแปร การซ้อนมิกซ์อิน ตัวดำเนินการและฟังก์ชัน ความแตกต่างหลักระหว่าง Less กับพรีคอมไพเลอ ร์ CSS อื่นๆ คือ Less อนุญาตให้คอมไพล์แบบเรียลไทม์ผ่าน less.js โดยเบราว์เซอร์[ 2 ] [ 4 ]

คุณสมบัติ

ตัวแปร

Lessอนุญาตให้กำหนดตัวแปรได้ โดยกำหนดตัวแปรด้วยเครื่องหมาย @ และ กำหนด ค่าให้ กับตัวแปร ด้วยเครื่องหมายโคลอน (:)

ระหว่างการแปล ค่าของตัวแปรจะถูกแทรกเข้าไปในเอกสาร CSS เอาต์พุต[ 2 ]

@pale -green-color : # 4D926F ;# header { color : @ pale-green-color ; } h2 { color : @ pale-green-color ; }

โค้ดด้านบนใน Less จะถูกแปลงเป็นโค้ด CSS ดังต่อไปนี้

# header { color : #4D926F ; } h2 { color : #4D926F ; }

มิกซ์อินส์

Mixins ช่วยให้สามารถฝังคุณสมบัติทั้งหมดของคลาสหนึ่งลงในอีกคลาสหนึ่งได้โดยการรวมชื่อคลาสเป็นหนึ่งในคุณสมบัติ ทำให้ทำหน้าที่เหมือนค่าคงที่หรือตัวแปร นอกจากนี้ยังสามารถทำหน้าที่เหมือนฟังก์ชันและรับอาร์กิวเมนต์ได้ CSS ไม่รองรับ Mixins: โค้ดที่ซ้ำกันจะต้องซ้ำกันในแต่ละตำแหน่ง Mixins ช่วยให้การทำซ้ำโค้ดมีประสิทธิภาพและสะอาดมากขึ้น รวมถึงการแก้ไขโค้ดได้ง่ายขึ้น[ 2 ]

.rounded -corners ( @radius : 5px 10px 8px 2px ) { -webkit- border-radius : @radius ; -moz- border -radius : @radius ; border - radius : @radius ; }# ส่วนหัว{ .rounded-corners ; } # ส่วนท้าย{ .rounded-corners(10px 25px 35px 0px) ; }

โค้ดด้านบนใน Less จะถูกแปลงเป็นโค้ด CSS ดังต่อไปนี้:

#header { -webkit - border - radius : 5px 10px 8px 2px ; -moz - border - radius : 5px 10px 8px 2px ; border - radius : 5px 10px 8px 2px ; } #footer { -webkit - border - radius : 10px 25px 35px 0px ; -moz - border - radius : 10px 25px 35px 0px ; border - radius : 10px 25px 35px 0px ; }

Less มีชุดกฎพิเศษประเภทหนึ่งที่เรียกว่า parametric mixins ซึ่งสามารถผสมผสานได้เหมือนกับคลาส แต่รับค่าพารามิเตอร์ได้

# header { h1 { font-size : 26 px ; font-weight : bold ; } p { font-size : 16 px ; a { text-decoration : none ; color : red ; &:hover { border-width : 1 px ; color : #fff ; } } } }

โค้ดด้านบนใน Less จะถูกแปลงเป็นโค้ด CSS ดังต่อไปนี้:

#header h1 { font -size : 26px ; font-weight : bold ; } #header p { font - size : 16px ; } #header p a { text - decoration : none ; color : red ; } #header p a : hover { border - width : 1px ; color : #fff ; }

หน้าที่และการดำเนินงาน

Less อนุญาตให้ดำเนินการและใช้งานฟังก์ชันได้ การดำเนินการอนุญาตให้บวก ลบ หาร และคูณค่าคุณสมบัติและสี ซึ่งสามารถใช้สร้างความสัมพันธ์ที่ซับซ้อนระหว่างคุณสมบัติได้ ฟังก์ชันจะจับคู่แบบหนึ่งต่อหนึ่งกับโค้ด JavaScript ทำให้สามารถจัดการค่าต่างๆ ได้

@the -border : 1px ; @base -color : # 111 ; @red : # 842210 ;# ส่วนหัว{ สี: @ base-color * 3 ; ขอบซ้าย: @ the-border ; ขอบขวา: @ the-border * 3 ; } # ส่วนท้าย{ สี: @ base-color + #003300 ; สีขอบ: ลดความอิ่มตัว( @red , 10 % ) ; }

โค้ดด้านบนใน Less จะถูกแปลงเป็นโค้ด CSS ดังต่อไปนี้:

# ส่วนหัว{ สี: #333 ; ขอบซ้าย: 1 พิกเซล; ขอบขวา: 3 พิกเซล; } # ส่วนท้าย{ สี: #114411 ; สีขอบ: #7d2717 ; }

การเปรียบเทียบ

แซสส์

ทั้งSassและ Less เป็นตัวประมวลผล CSS ล่วงหน้า ซึ่งช่วยให้สามารถเขียน CSS ที่สะอาดตาในโครงสร้างการเขียนโปรแกรมแทนที่จะใช้กฎคงที่[ 5 ]

Less ได้รับแรงบันดาลใจจาก Sass [ 6 ] [ 3 ] Sass ได้รับการออกแบบมาเพื่อทำให้ CSS ง่ายขึ้นและขยายขอบเขตการใช้งาน ดังนั้นสิ่งต่างๆ เช่น วงเล็บปีกกาจึงถูกลบออกจากไวยากรณ์ Less ได้รับการออกแบบให้ใกล้เคียงกับ CSS มากที่สุดเท่าที่จะเป็นไปได้ และด้วยเหตุนี้ CSS ที่มีอยู่จึงสามารถใช้เป็นโค้ด Less ที่ถูกต้องได้[ 7 ]

Sass เวอร์ชันใหม่กว่ายังได้แนะนำไวยากรณ์ที่คล้ายกับ CSS ที่เรียกว่า SCSS (Sassy CSS)

ใช้บนเว็บไซต์

สามารถนำ Less ไปใช้กับเว็บไซต์ได้หลายวิธี วิธีหนึ่งคือการรวม ไฟล์ JavaScript less.js เพื่อแปลงโค้ดแบบเรียลไทม์ จากนั้นเบราว์เซอร์จะแสดงผล CSS ที่ได้ อีกวิธีหนึ่งคือการแปลงโค้ด Less เป็น CSS บริสุทธิ์ แล้วอัปโหลด CSS นั้นไปยังเว็บไซต์ ด้วยวิธีนี้ จะไม่มีการอัปโหลดไฟล์ .less และเว็บไซต์ไม่จำเป็นต้องใช้ตัวแปลง JavaScript less.js

ซอฟต์แวร์น้อยลง

ชื่อคำอธิบายใบอนุญาตซอฟต์แวร์แพลตฟอร์มฟังก์ชันการทำงาน
WinLess - ส่วนต่อประสานผู้ใช้แบบกราฟิก (GUI) สำหรับ Windows สำหรับ less.jsคอมไพเลอร์ GUI น้อยกว่าApache 2.0 [ 8 ]วินโดวส์คอมไพเลอร์
กระทืบโปรแกรมแก้ไขและคอมไพล์ Less (ต้องใช้ Adobe AIR)GPL [ 9 ]ระบบปฏิบัติการ Windows, Mac OS Xคอมไพเลอร์บรรณาธิการ
less.js-windowsโปรแกรมยูทิลิตี้แบบง่ายๆ สำหรับ Windows ที่ใช้คำสั่งบรรทัดเพื่อแปลงไฟล์ *.less เป็น CSS โดยใช้ less.jsใบอนุญาต MIT [ 10 ]วินโดวส์คอมไพเลอร์
แอปน้อยกว่าคอมไพเลอร์น้อยกว่ากรรมสิทธิ์แมคโอเอสเอ็กซ์คอมไพเลอร์
โค้ดคิทคอมไพเลอร์น้อยกว่ากรรมสิทธิ์แมคโอเอสเอ็กซ์คอมไพเลอร์
เลสเอ็นจิ้นคอมไพเลอร์น้อยกว่าฟรีปลั๊กอิน OpenCartคอมไพเลอร์
ซิมเพิลเลสคอมไพเลอร์น้อยกว่าฟรีแต่ไม่มีใบอนุญาตที่ชัดเจน[ 11 ]ระบบปฏิบัติการ Windows, Mac OS X และLinuxคอมไพเลอร์
ร่าเริงคอมไพเลอร์น้อยกว่าMs-PL [ 12 ]ปลั๊กอิน Visual Studioคอมไพเลอร์
Mindscape Web Workbenchการเน้นไวยากรณ์และ IntelliSense สำหรับ Less และ Sassกรรมสิทธิ์ปลั๊กอิน Visual Studioการเน้นไวยากรณ์ของคอมไพเลอ ร์
ปลั๊กอิน Eclipse สำหรับ Lessปลั๊กอิน EclipseEPL 1.0 [ 13 ]ปลั๊กอิน Eclipseการเน้นไวยากรณ์การช่วยเหลือเนื้อหาคอมไพเลอร์
ไร้ม็อดโมดูล Apache2 สำหรับคอมไพล์ Less แบบทันทีโอเพนซอร์สลินุกซ์คอมไพเลอร์
การมีส่วนร่วมของกรูนท์งาน Grunt ใน Node.js สำหรับแปลง Less เป็น CSSMIT [ 14 ]โนด.เจ.คอมไพเลอร์
เว็บเอสเซนเชียลส่วนเสริม Visual Studio ที่รองรับ Less และ SassApache 2.0 [ 15 ]วินโดวส์การเน้นไวยากรณ์, การช่วยเหลือด้านเนื้อหา, คอมไพเลอร์
คลาสคอมไพเลอร์ C++ บริสุทธิ์MIT [ 16 ]อย่างน้อยก็ Windows, Linux, MacOSคอมไพเลอร์
คอมไพเลอร์เว็บน้อยลงคอมไพเลอร์บนเว็บMIT [ 17 ]อย่างน้อยก็ Windows, Linux, MacOSคอมไพเลอร์, การเน้นไวยากรณ์, ตัวย่อขนาด

ดูเพิ่มเติม

  • เว็บไซต์อย่างเป็นทางการ
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Less_(style_sheet_language)&oldid=1215619051 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ น้อยกว่า (ภาษาสำหรับจัดรูปแบบเอกสาร)

Less ( Leaner Style Sheets ; บางครั้งเขียนเป็น LESS ) เป็น ภาษาสไตล์ชีตพรี โปรเซสเซอร์ แบบไดนามิก ที่สามารถคอมไพล์เป็น Cascading Style Sheets (CSS)...

ตัวแปร

Less อนุญาตให้กำหนดตัวแปรได้ โดยกำหนดตัวแปรด้วย เครื่องหมาย @ และ กำหนด ค่าให้ กับตัวแปร ด้วยเครื่องหมาย โคลอน (:)

มิกซ์อินส์

Mixins ช่วยให้สามารถฝังคุณสมบัติทั้งหมดของคลาสหนึ่งลงในอีกคลาสหนึ่งได้โดยการรวมชื่อคลาสเป็นหนึ่งในคุณสมบัติ ทำให้ทำหน้าที่เหมือน ค่าคงที่ หรือตัวแปร นอกจากนี้ยังสามารถทำหน้าที่เหมือนฟังก์ชันและรับอาร์กิวเมนต์ได้ CSS ไม่รองรับ Mixins:...

หน้าที่และการดำเนินงาน

Less อนุญาตให้ดำเนินการและใช้งานฟังก์ชันได้ การดำเนินการอนุญาตให้บวก ลบ หาร และคูณค่าคุณสมบัติและสี ซึ่งสามารถใช้สร้างความสัมพันธ์ที่ซับซ้อนระหว่างคุณสมบัติได้ ฟังก์ชันจะจับคู่แบบหนึ่งต่อหนึ่งกับโค้ด JavaScript ทำให้สามารถจัดการค่าต่างๆ ได้