โมเดลกล่อง: border CSS
- หน้าก่อนหน้า CSS Padding
- หน้าต่อไป CSS Margin
border ขององค์ประกอบเป็นเส้นหนึ่งหรือหลายเส้นที่ล้อมรอบเนื้อหาและขอบเขตในตัวอักษร
border-style 属性
CSS Border
ใน HTML พวกเราใช้ตารางเพื่อสร้างขอบขอบรอบข้อความ แต่ด้วยการใช้ทรัพยากรของเส้นขอบ CSS พวกเราสามารถสร้างขอบขอบที่มีประสิทธิภาพที่สูง และสามารถนำไปใช้กับองค์ประกอบทุกชนิด
ขอบขอบขององค์ประกอบคือขอบขอบที่อยู่ด้านในขอบเขตขององค์ประกอบ ขอบขอบขององค์ประกอบเป็นเส้นหนึ่งหรือหลายเส้นที่ล้อมรอบเนื้อหาและขอบเขตในตัวอักษร
ขอบขอบมีสามด้าน: ความกว้าง รูปแบบ และสี ในบทความที่มาต่อไป เราจะเล่าให้คุณเรียงลำดับสามด้านนี้ให้ละเอียด
ขอบขอบกับสี背影
CSS ระบุว่าเส้นขอบเขียนขึ้นบนสี背影ขององค์ประกอบ นี่มีความสำคัญเพราะบางเส้นขอบเป็น 'แตก' (เช่น ขอบขอบจุดหรือขอบขอบจมาย) สี背影ขององค์ประกอบควรปรากฏขึ้นระหว่างส่วนที่ที่เห็นของเส้นขอบ
CSS2 ระบุว่าสี背影เพียงเพื่อขอบของพื้นที่ในตัวอักษร ไม่ใช่ขอบของเส้นขอบ หลังจากนั้น CSS2.1 ได้แก้ไขมัน: สี背影ขององค์ประกอบเป็นสี背影ของเนื้อหา พื้นที่ในตัวอักษร และพื้นที่ของเส้นขอบ ส่วนใหญ่ทั้งหมดของเบราเซอร์ตามตาม CSS2.1 อย่างไร แต่บางเบราเซอร์เก่าแก่อาจมีการแสดงที่ต่างกัน
รูปแบบของขอบขอบ
รูปแบบเป็นหนึ่งในประการที่สำคัญที่สุดของขอบขอบ ไม่ได้เพราะรูปแบบควบคุมการแสดงของขอบขอบ (แน่นอนว่ารูปแบบยืดหย่องการแสดงของขอบขอบ) แต่เพราะหากไม่มีรูปแบบ จะไม่มีขอบขอบใดๆ
CSS border-style 属性กำหนด 10 รูปแบบที่ไม่ใช้มาจากค่าที่มีมาแล้ว รวมถึง none
ตัวอย่างเช่น คุณสามารถกำหนดขอบของภาพให้เป็น outset ทำให้มันดูเหมือนปุ่มที่ปรับดัดได้:
a:link img {border-style: outset;}
กำหนดหลายรูปแบบ
คุณสามารถกำหนดหลายรูปแบบสำหรับขอบขอบ ตัวอย่างเช่น:
p.aside {border-style: solid dotted dashed double;}
กฎที่มีขึ้นมานี้กำหนดสี่รูปแบบขอบของประโยคที่มีชื่อคลาสว่า aside: ขอบขอบแบบสีเข้ม ขอบขอบแบบจุด ขอบขอบแบบจมาย และขอบขอบแบบสองสาย
เราเห็นว่าค่าที่นี่มีลำดับ top-right-bottom-left และเมื่อเจอการกำหนดหลายค่าเพื่อกำหนดเนื้อหาข้างในเรียงลำดับเช่นนี้
กำหนดรูปแบบข้างเดียว
หากคุณต้องการกำหนดรูปแบบของเส้นขอบของมุมของกล่ององค์ประกอบ แทนที่จะกำหนดรูปแบบของเส้นขอบของทั้ง 4 ขอบ คุณสามารถใช้ทรัพยากรของรูปแบบขอบข้างเดียวด้านต่อไปนี้:
ดังนั้นทั้งสองวิธีนี้เท่ากัน:
p {border-style: solid solid solid none;} p {border-style: solid; border-left-style: none;}
จำเป็นต้องระวัง:ถ้าคุณต้องการใช้วิธีที่สอง คุณจำเป็นต้องจัดการคุณสมบัติของขอบเดียวด้วยคุณสมบัติสั้น มีความหมายว่าถ้าคุณจัดการคุณสมบัติของขอบเดียวก่อน border-style ค่าของคุณสมบัติสั้นจะทับค่าของคุณสมบัติขอบเดียว
ความกว้างของเขตของชาย
คุณสามารถ คุณสมบัติ border-widthกำหนดความกว้างของเขตของชาย
มีสองวิธีในการกำหนดความกว้างของเขตของชาย คือ คุณสามารถกำหนดค่าความยาว เช่น 2px หรือ 0.1em หรือใช้หนึ่งในสามคำที่เป็นรหัสเฉพาะ ซึ่งคือ thin 、medium (ค่าปริยาย) และ thick。
หมายเหตุ:CSS ไม่ได้กำหนดความกว้างของ 3 คำที่เป็นรหัสเฉพาะ ดังนั้นตัวแทนผู้ใช้ที่เรียกใช้อาจตั้งค่า thin 、medium (ค่าปริยาย) และ thick ให้เท่ากับ 5px、3px และ 2px ในขณะที่ตัวแทนผู้ใช้อื่น อาจตั้งค่าให้เท่ากับ 3px、2px และ 1px。
ดังนั้น สามารถตั้งค่าความกว้างของเขตของชายได้เช่นนี้:
p {border-style: solid; border-width: 5px;}
หรือ:
p {border-style: solid; border-width: thick;}
กำหนดความกว้างของขอบเดียว
คุณสามารถตั้งค่าเขตของชายขององค์ประกอบตามลำดับ top-right-bottom-left:
p {border-style: solid; border-width: 15px 5px 15px 5px;}
ตัวอย่างที่มีอยู่ข้างต้นนี้ก็สามารถเขียนลงได้แบบที่นี้ (รูปแบบเขียนนี้เรียกว่าค่าที่คัดลอก):
p {border-style: solid; border-width: 15px 5px;}
คุณยังสามารถตั้งค่าความกว้างของเขตของชายทุกขอบด้วยคุณสมบัติด้านล่างนี้:
ดังนั้น กฎที่มีอยู่ข้างต้นนี้เท่ากับตัวอย่างที่มีอยู่ข้างต้นนี้:
p { border-style: solid; border-top-width: 15px; border-right-width: 5px; border-bottom-width: 15px; border-left-width: 5px; }
ไม่มีเขตของชาย
ในตัวอย่างที่ผ่านมาคุณได้เห็นแล้ว ถ้าคุณต้องการแสดงเขตของชายของตัวแทน คุณจำเป็นต้องตั้งค่ารูปแบบชาย อย่างเช่น solid หรือ outset。
แล้วหากคุณตั้งค่า border-style ให้เป็น none จะเกิดอะไรขึ้นมา:
p {border-style: none; border-width: 50px;}
ถึงแม้ว่าความกว้างของเขตขอบจะเป็น 50px แต่รูปแบบของเขตขอบกำหนดเป็น none ในกรณีนี้ ไม่เพียงแค่รูปแบบของเขตขอบจะหายไป ความกว้างของเขตขอบก็จะถูกตั้งเป็น 0 ทำไมเขตขอบจะหายไป?
นี่เพราะถ้ารูปแบบของเขตขอบเป็น none คือเขตขอบไม่มีอยู่อย่างแท้จริง จึงไม่มีความกว้างของเขตขอบ ดังนั้นความกว้างของเขตขอบจะถูกตั้งเป็น 0 ไม่ว่าคุณได้กำหนดเป็นอะไร
จำนวนนี้มีความสำคัญมาก จริงๆแล้ว ลืมประกาศรูปแบบของเขตขอบเป็นความผิดพลาดที่มักเกิดขึ้น ตามกฎต่อไปนี้ ทุกองค์กรณ์ h1 จะไม่มีเขตขอบ ไม่ว่าจะมีความกว้าง 20 pixel หรือไม่
h1 {border-width: 20px;}
เพราะค่าปริมาณต้นแบบของ border-style คือ none ถ้าไม่มีการประกาศรูปแบบ มันจะเท่ากับ border-style: noneดังนั้น ถ้าคุณต้องการให้เขตขอบปรากฏขึ้น คุณจะต้องประกาศรูปแบบของเขตขอบ
สีของเขตขอบ
การตั้งค่าสีของเขตขอบเป็นไปด้ง่ายมาก ใน CSS มันใช้ตัวเลขเพียงแค่ border-color 属性มันสามารถรับค่าสีสูงสุด 4 ค่า
คุณสามารถใช้ค่าสีทุกชนิด เช่น สีชื่อ หรือค่าสีสิบหกหลัก หรือค่า RGB
p { border-style: solid; border-color: blue rgb(25%,35%,45%) #909090 red; }
ถ้าค่าสีมีตัวเลขน้อยกว่า 4 ตัว การคัดลอกค่าจะมีผล ตัวอย่างเช่น กฎที่ต่อไปนี้ประกาศว่าเขตขอบของย่อหน้าที่มีสีฟ้าด้านบนและด้านล่าง และสีแดงด้านขวาและด้านซ้าย
p { border-style: solid; border-color: blue red; }
หมายเหตุ:สีขอบปริมาณปกติคือสีของเอกสารตัวเอง ถ้าไม่มีการประกาศสีของเขตขอบ มันจะเหมือนกับสีของข้อความขององค์กรณ์ ด้านนอกนี้ ถ้าองค์กรณ์ไม่มีข้อความใดๆ ตัวอย่างเช่นตารางที่มีรูปภาพเท่านั้น สีขอบของตารางนี้จะเหมือนกับสีของข้อความขององค์กรณ์พ่อ (เพราะ color สามารถถ่ายทอดได้) องค์กรณ์พ่อนี้อาจเป็น body หรือ div หรือ table อื่นๆ
กำหนดสีของเขตขอบเดียวข้าง
มีคุณสมบัติสีของเขตขอบเดียวข้างบางอย่าง หลักการของมันเหมือนกับรูปแบบและความกว้างเดียวข้าง
เพื่อกำหนดเขตขอบที่เป็นสีดำสำหรับองค์กรณ์ h1 และเขตขอบด้านขวาเป็นสีแดง คุณสามารถกำหนดดังนี้:
h1 { border-style: solid; border-color: black; border-right-color: red; }
เขตขอบที่มีความเห็นโดยสาร
เราได้พูดถึงแล้วว่า ถ้าเขตขอบไม่มีรูปแบบ มันจะไม่มีความกว้าง แต่บางกรณีคุณอาจต้องการสร้างเขตขอบที่ไม่มีความเห็น
CSS2 ได้นำเข้าค่าสีของเขตขอบที่เรียกว่า transparent ค่านี้ใช้สร้างเขตขอบที่มีความกว้างแต่ไม่มีความเห็น เช่นในตัวอย่างด้านล่างนี้:
<a href="#">AAA</a> <a href="#">BBB</a> <a href="#">CCC</a>
เราได้กำหนดรูปแบบดังนี้สำหรับลิงก์ด้านบน
a:link, a:visited { border-style: solid; border-width: 5px; border-color: transparent; } a:hover {border-color: gray;}
ในทางเดียวกัน โดยใช้ transparent การใช้ขอบเหมือนการใช้เปลือกด้านในอีกด้าน มีประโยชน์เพิ่มเติมอีกอย่างคือ สามารถทำให้มันเห็นได้เมื่อคุณต้องการ ขอบที่โปร่งใสนี้เหมือนเปลือกด้านในเพราะสีพื้นหลังขององค์ประกอบจะขยายเข้าไปในพื้นที่ขอบ (หากมีสีพื้นหลังที่เห็นได้)
ความสำคัญก่อน IE7 ซึ่ง IE/WIN ไม่มีการสนับสนุน transparent ในรุ่นเก่า ในรุ่นเก่า IE จะตั้งค่าสีขอบตามค่า color ขององค์ประกอบ
ตัวอย่างขอบของ CSS
- ทุกคุณสมบัติของขอบในคำแสดงเดียว
- ตัวอย่างนี้แสดงวิธีใช้คุณสมบัติย่อลดที่จะตั้งค่าทุกคุณสมบัติของขอบสี่ด้านในคำแสดงเดียว
- ตั้งค่ารูปแบบของขอบสี่ด้าน
- ตัวอย่างนี้แสดงวิธีตั้งค่ารูปแบบของขอบสี่ด้าน
- ตั้งค่าขอบที่ต่างกันในแต่ละด้าน
- ตัวอย่างนี้แสดงวิธีตั้งค่าขอบที่ต่างกันในแต่ละด้านขององค์ประกอบ
- ทุกคุณสมบัติของความกว้างของขอบในคำแสดงเดียว
- ตัวอย่างนี้แสดงวิธีใช้คุณสมบัติย่อลดที่จะตั้งค่าทุกคุณสมบัติของความกว้างของขอบในคำแสดงเดียว
- ตั้งค่าสีของขอบสี่ด้าน
- ตัวอย่างนี้แสดงวิธีตั้งค่าสีของขอบสี่ด้าน สามารถตั้งค่าสี 1-4 สี
- ทุกคุณสมบัติของขอบด้านล่างในคำแสดงเดียว
- ตัวอย่างนี้แสดงวิธีใช้คุณสมบัติย่อลดที่จะตั้งค่าทุกคุณสมบัติของขอบด้านล่างในคำแสดงเดียว
- ตั้งค่าสีของขอบด้านล่าง
- ตัวอย่างนี้แสดงวิธีตั้งค่าสีของขอบด้านล่าง
- ตั้งค่ารูปแบบของขอบด้านล่าง
- ตัวอย่างนี้แสดงวิธีตั้งค่ารูปแบบของขอบด้านล่าง
- ตั้งค่าความกว้างของขอบด้านล่าง
- ตัวอย่างนี้แสดงวิธีตั้งค่าความกว้างของขอบด้านล่าง
- ทุกคุณสมบัติของขอบซ้ายในคำแสดงเดียว
- ทุกคุณสมบัติของขอบซ้ายในคำแสดงเดียว
- ตั้งค่าสีของขอบซ้าย
- ตัวอย่างนี้แสดงวิธีตั้งค่าสีของขอบซ้าย
- ตั้งค่ารูปแบบของขอบซ้าย
- ตัวอย่างนี้แสดงวิธีตั้งค่ารูปแบบของขอบซ้าย
- ตั้งค่าความกว้างของขอบซ้าย
- ตัวอย่างนี้แสดงวิธีตั้งค่าความกว้างของขอบซ้าย
- ทุกคุณสมบัติของขอบขวาในคำแสดงเดียว
- ตัวอย่างนี้แสดงคุณสมบัติย่อลดที่ใช้ในการตั้งค่าทุกคุณสมบัติของขอบขวาในคำแสดงเดียว
- ตั้งค่าสีของขอบขวา
- ตัวอย่างนี้แสดงวิธีตั้งค่าสีของขอบขวา
- ตั้งค่ารูปแบบของขอบขวา
- ตัวอย่างนี้แสดงวิธีตั้งค่ารูปแบบของขอบขวา
- ตั้งค่าความกว้างของขอบขวา
- ตัวอย่างนี้แสดงวิธีตั้งค่าความกว้างของขอบขวา
- ทุกคุณสมบัติของขอบบนในคำแสดงเดียว
- ตัวอย่างนี้แสดงวิธีใช้คุณสมบัติย่อลดที่จะตั้งค่าทุกคุณสมบัติของขอบบนด้วยคำแสดงเดียว
- ตั้งสีของเส้นขอบบน
- ตั้งสีของเส้นขอบบน
- ตัวอย่างนี้แสดงวิธีการตั้งสีของเส้นขอบบน
- ตั้งรูปแบบของเส้นขอบบน
- ตัวอย่างนี้แสดงวิธีการตั้งรูปแบบของเส้นขอบบน
- ตั้งความกว้างของเส้นขอบบน
ตัวอย่างนี้แสดงวิธีการตั้งความกว้างของเส้นขอบบน
CSS ของเส้นขอบ | คุณสมบัติ |
---|---|
คำอธิบาย | border |
คุณสมบัติย่อลดที่ใช้ตั้งค่าคุณสมบัติของ 4 ขอบในคำแสดงเดียว | ใช้ตั้งรูปแบบของเส้นขอบทั้งหมดของตัวองค์ประกอบ หรือตั้งรูปแบบของเส้นขอบแต่ละขอบ |
border-width | คุณสมบัติย่อลดที่ใช้เพื่อตั้งค่าความกว้างของเส้นขอบทั้งหมดของตัวองค์ประกอบ หรือตั้งความกว้างแยกต่างหากสำหรับขอบแต่ละขอบ |
border-color | คุณสมบัติย่อลดที่ตั้งค่าสีส่วนที่มองเห็นของเส้นขอบทั้งหมดของตัวองค์ประกอบ หรือตั้งสีแยกต่างหากสำหรับ 4 ขอบ |
border-bottom | คุณสมบัติย่อลดที่ใช้เพื่อตั้งค่าทุกคุณสมบัติของเส้นขอบด้านล่างในคำแสดงเดียว |
border-bottom-color | ตั้งสีของเส้นขอบด้านล่างของตัวองค์ประกอบ |
border-bottom-style | ตั้งรูปแบบของเส้นขอบด้านล่างของตัวองค์ประกอบ |
border-bottom-width | ตั้งความกว้างของเส้นขอบด้านล่างของตัวองค์ประกอบ |
border-left | คุณสมบัติย่อลดที่ใช้เพื่อตั้งค่าทุกคุณสมบัติของเส้นขอบซ้ายในคำแสดงเดียว |
border-left-color | ตั้งสีของเส้นขอบซ้ายของตัวองค์ประกอบ |
border-left-style | ตั้งรูปแบบของเส้นขอบซ้ายของตัวองค์ประกอบ |
border-left-width | ตั้งความกว้างของเส้นขอบซ้ายของตัวองค์ประกอบ |
border-right | คุณสมบัติย่อลดที่ใช้เพื่อตั้งค่าทุกคุณสมบัติของเส้นขอบขวาในคำแสดงเดียว |
border-right-color | ตั้งสีของเส้นขอบขวาของตัวองค์ประกอบ |
border-right-style | ตั้งรูปแบบของเส้นขอบขวาของตัวองค์ประกอบ |
border-right-width | ตั้งความกว้างของเส้นขอบขวาของตัวองค์ประกอบ |
border-top | คุณสมบัติย่อลดที่ใช้เพื่อตั้งค่าทุกคุณสมบัติของเส้นขอบบนในคำแสดงเดียว |
border-top-color | ตั้งสีของเส้นขอบบนส่วนของตัวองค์ประกอบ |
border-top-style | ตั้งรูปแบบของเส้นขอบบนส่วนของตัวองค์ประกอบ |
border-top-width | ตั้งความกว้างของเส้นขอบบนส่วนของตัวองค์ประกอบ |
- หน้าก่อนหน้า CSS Padding
- หน้าต่อไป CSS Margin