ฉันต้องการเพิ่มคำตอบของ JOPLOmacedo วิธีแก้ปัญหาของเขาคือสิ่งที่ฉันชอบ แต่ฉันมักจะมีปัญหากับการเยื้องเมื่อ li มีมากกว่าหนึ่งบรรทัด มันเป็นการเที่ยวยุ่งยิ่งเพื่อค้นหาการเยื้องที่ถูกต้องด้วยระยะขอบ ฯลฯ แต่นี่อาจเกี่ยวข้องกับฉันเท่านั้น
สำหรับฉันการวางตำแหน่งที่แน่นอนของ:before
องค์ประกอบหลอกทำงานได้ดีที่สุด ผมตั้งpadding-left
บน UL ตำแหน่งเชิงลบด้านซ้ายบนองค์ประกอบเช่นเดียวกับของยู:before
padding-left
เพื่อให้ได้ระยะทางของเนื้อหาจาก:before
องค์ประกอบด้านขวาฉันเพิ่งตั้งค่าpadding-left
บน li แน่นอนว่าต้องมีตำแหน่งญาติ ตัวอย่างเช่น
ul {
margin: 0 0 1em 0;
padding: 0 0 0 1em;
/* make space for li's :before */
list-style: none;
}
li {
position: relative;
padding-left: 0.4em;
/* text distance to icon */
}
li:before {
font-family: 'my-icon-font';
content: 'character-code-here';
position: absolute;
left: -1em;
/* same as ul padding-left */
top: 0.65em;
/* depends on character, maybe use padding-top instead */
/* .... more styling, maybe set width etc ... */
}
หวังว่านี่จะชัดเจนและมีค่าสำหรับคนอื่นกว่าฉัน