⊗jsrtPmSyCMCS 109 of 112 menu

คำสั่ง composes สำหรับคลาสใน CSS modules ใน React

ในบทเรียนนี้ เราจะพิจารณาเทคนิคที่มีประโยชน์มาก สำหรับการนำสไตล์ CSS ของคลาสหนึ่งมาใช้ซ้ำ ในอีกคลาสหนึ่งใน CSS modules

กลับไปที่แอปพลิเคชัน buttons ซึ่ง เราได้ทำไว้ในบทเรียนที่ผ่านมา ลองดูไฟล์ Buttons.module.css:

.btn1 { background-color: orange; border: 2px solid brown; color: white; } .btn2 { background-color: red; border: 2px solid green; color: yellow; } .btn3 { background-color: brown; border: 2px solid yellowgreen; color: orange; }

สมมติว่า เราต้องการให้ปุ่มทุกปุ่มมี การตัดมุมโค้ง (border-radius) และขนาดฟอนต์ ที่เหมือนกัน แน่นอนว่าเราสามารถเพิ่ม คุณสมบัติที่เหมือนกันในแต่ละคลาสได้ แต่ต้องขอบคุณคำสั่ง composes จาก CSS modules เราจะทำอีกวิธีหนึ่ง

เริ่มต้นด้วยการสร้างคลาสเพิ่มอีกหนึ่งคลาส เช่น common-btn ซึ่งเราจะใส่ คุณสมบัติที่เหมือนกันเหล่านี้ไว้ในนั้น และเพื่อนำ คุณสมบัติจากคลาสนี้ไปใช้ในคลาสอื่น จำเป็นต้อง ใช้ syntax นี้ในคลาสเหล่านั้น:

selector { composes: ชื่อคลาส; }

ตอนนี้โค้ดของ Buttons.module.css จะมีลักษณะดังนี้:

.common-btn { font-size: 16px; border-radius: 3px; } .btn1 { composes: common-btn; background-color: orange; border: 2px solid brown; color: white; } .btn2 { composes: common-btn; background-color: red; border: 2px solid green; color: yellow; } .btn3 { composes: common-btn; background-color: brown; border: 2px solid yellowgreen; color: orange; }

นำแอปพลิเคชัน React inputs ของคุณ ซึ่งคุณทำไว้ในโจทย์ของบทเรียนที่ผ่านมา มาเพิ่มสไตล์ CSS ที่เหมือนกันสองสามอย่าง พร้อมค่าที่เหมือนกันให้กับอินพุตทั้งหมด สร้างคลาสเพิ่มเติมขึ้นมา เพื่อเขียนสไตล์เหล่านี้ไว้ในนั้น จากนั้น ใช้ composes เพื่อกระจาย สไตล์เหล่านั้นไปยังคลาสอื่นๆทั้งหมดสำหรับอินพุต

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ