# SCSS ตอนที่ 2 --- ## content ในตอนนี้ที่เราจะพูดถึงกันนะครับ - การประกาศตัวแปรของ SCSS - ชนิดตัวแปรของ SCSS ($variables) - String - Number - ColorList Array - Map --- ==การประกาศตัวแปรของ SCSS== - การประกาศตัวแปรใน SCSS นั้น ใช้ ==$== นำหน้าชื่อตัวแปร (a-zA-Z0-9_- ผมก็ไม่มั่นใจนะ ใช้อักษรอื่นได้มากน้อยแค่ไหน ) - ค่าของตัวแปร อยู่หลัง ==:== - ดังตัวอย่าง --> `$variable: 'init value';` --- ==ตัวแปรของ SCSS ($variables)== <small>ตัวแปรใน SCSS นั้น ค่อนข้าง อิสระ มันอิสระยังไงเดี๋ยวมาดูกัน</small> --- ==ชนิดตัวแปร ข้อความ Strings== <small>$direction1: 'left';</small> <small>$direction2: left;</small> --- ตัวแปร $direction 1 และ 2 นั้น เป็นข้อความทั้งคู่ ดังนั้น การจะใส่ =="== หรือ =='== หรือไม่ใส่ นั้นก็ดูที่ความเหมาะสมของการใช้งาน ซึ่งในบางครั้งอาจมีปัญหาได้ --- ==ชนิดตัวแปร ตัวเลข Numbers== <small>ตัวแปรตัวเลขนั้น นอกจากจำนวนเต็มบวก เต็มลบ หรือพวก จุดทศนิยม + - แล้ว ยังมี UNITS ตัวเลขผสมหน่วย เช่น 5px 1em 25rem เป็นต้น อ้าว แล้วแบบนี้มันจะเอามาคำนวนได้หรอ??? </small> --- ==การคำนวณ== --- <small> ในการคำวานปกตินั้น เราคงไม่มีปัญหาอะไร แต่กับพวกที่มีหน่วยละ ?? ในการคำนวนตัวเลขที่มีหน่วย หรือ ยูนิท นั้น ถ้าใช้ ยูนิต กับ ตัวเลขปกติ จะได้ผลลัพพ์เป็น ยูนิตหน่วยนั้นๆ </small> --- <style> code.blue { color: #337AB7 !important; } code.orange { color: #F7A004 !important; } </style> หากใช้ ยูนิต กับ ยูนิต ผลจะออกมาเป็น หน่วยของ ยูนิตตัวแรก เช่น - <code class="blue">margin: (6px + 15in);</code> - <code class="orange">padding: ( 15in + 6px);</code> จะได้ - <code class="blue">margin: 1446px;</code> - <code class="orange">padding: 15.0625in;</code> <small>แต่บางตัวก็ไม่ได้นะ เช่น 6px + 15em ผลออกมาก็จะ ตูมม กลายเป็นโกโก้ครั้น</small> --- ==ชนิดตัวแปร สี Colors== --- <style> code.blue { color: #337AB7 !important; } code.orange { color: #F7A004 !important; } </style> เราสามารถเก็บสีต่างๆได้โดยตรง เช่น - <code class="blue">$color1: rgba(0,0,0,0.1);</code> - <code class="orange">$color2: white;</code> --- ==ชนิดตัวแปร Lists หรือ Array== --- ตัวแปร Array ใน scss จะอยู่ในรูปแบบนี้ ```css= $font-stack: ('Helvetica', 'Arial', sans-serif); ``` <small>แต่ถึงจะไม่มี , หรือ ( ) ก็ยังเป็น Array ที่ใช้ได้นะ เห็นไหมตัวแปรมันให้อิสระเราสูงขนาดไหน </small> --- <small> การเพิ่มค่าใน Array นอกจากเพิ่มแบบตรงๆ ยังใช้พวกคำสั่ง เช่น append( ) ได้เช่นกัน ดูพวกคำสั่งต่างๆ เพิ่มเติมได้ที่</small> [SASS Function](http://sass-lang.com/documentation/Sass/Script/Functions.html) --- ==ชนิดตัวแปร Maps== --- <small> Maps ก็เหมือนกับ Array แต่มีค่าเป็น key:values </small> <small> การดึง ค่า ออกมาจาก Array หรือ Maps นั้นออกจะวุ่นวายไปนิด คือต้องใช้ Loop หรือ ฟังก์ชั่น ช่วยในการดึงค่า เดี๋ยวจะแยกออกเป็น Ep ใหม่ให้ดูต่างหากนะครับ ตอนนี้สามารถดูพวกคำสั่งต่างๆ ได้ที่ </small> [SASS Function](http://sass-lang.com/documentation/Sass/Script/Functions.html) --- จบตอนที่ 2 [ >> ตอนที่ 3](https://hackmd.io/@UKzvUDqaSgyvoBvj0MfI6A/rykcS-yII) ---
{"metaMigratedAt":"2023-06-15T05:21:40.427Z","metaMigratedFrom":"YAML","title":"SCSS ตอนที่ 2 มารู้จัก SCSS กันสักหน่อย พอไปวัดไปวาได้","breaks":true,"description":"SCSS เบื้องต้น","contributors":"[{\"id\":\"50acef50-3a9a-4a0c-afa0-1be3d0c7c8e8\",\"add\":5625,\"del\":2515}]"}
    409 views