อาจเป็นคำตอบล่าช้า แต่ฉันต้องการแบ่งปันกับการค้นพบของฉัน ฉันพบวิธีใหม่ 2 วิธีสำหรับปัญหานี้ซึ่งฉันไม่พบในคำตอบ:
เส้นขอบด้านในผ่านbox-shadow
คุณสมบัติ CSS
ใช่กล่องเงาใช้เพื่อเพิ่มเงากล่ององค์ประกอบ แต่คุณสามารถระบุinset
เงาซึ่งจะมีลักษณะเป็นเส้นขอบด้านในแทนที่จะเป็นเงา คุณต้องตั้งค่าเงาในแนวนอนและแนวตั้ง0px
เป็น " spread
" และคุณสมบัติของbox-shadow
ความกว้างของขอบที่คุณต้องการ ดังนั้นสำหรับเส้นขอบ 'inner' ของ 10px คุณจะต้องเขียนสิ่งต่อไปนี้:
div{
width:100px;
height:100px;
background-color:yellow;
box-shadow:0px 0px 0px 10px black inset;
margin-bottom:20px;
}
นี่คือตัวอย่างjsFiddleที่แสดงความแตกต่างระหว่างbox-shadow
เส้นขอบและเส้นขอบ 'ปกติ' วิธีนี้ชายแดนของคุณและความกว้างของกล่องรวม 100px รวมถึงชายแดนด้วย
เพิ่มเติมเกี่ยวกับ box-shadow: ที่นี่
ชายแดนผ่านคุณสมบัติ css เค้าร่าง
นี่เป็นอีกวิธีหนึ่ง แต่วิธีนี้ชายแดนจะอยู่นอกกรอบ นี่คือตัวอย่าง ดังต่อไปนี้จากตัวอย่างคุณสามารถใช้outline
คุณสมบัติcss เพื่อตั้งค่าเส้นขอบที่ไม่มีผลต่อความกว้างและความสูงขององค์ประกอบ วิธีนี้ความกว้างชายแดนจะไม่ถูกเพิ่มเข้าไปในความกว้างขององค์ประกอบ
div{
width:100px;
height:100px;
background-color:yellow;
outline:10px solid black;
}
เพิ่มเติมเกี่ยวกับเค้าร่าง: ที่นี่