我有这段HTML片段:
<ul class="custom">
<li data-bullet="a">Item 1</li>
<li data-bullet="aa">Item 2</li>
<li data-bullet="ab">Item 3.1<br/>Item 3.2</li>
<li data-bullet="c">Item 4</li>
<li data-bullet="d">Item 5</li>
<li data-bullet="de">Item 6</li>
</ul>
和 CSS:
.custom {
list-style:none;
padding:0;
margin:0;
}
.custom li:before {
display:inline-block;
content:attr(data-bullet);
width:50px;
}
/*
.custom {
list-style:none;
padding:0;
margin:0;
}
.custom li:before {
display:inline-block;
content:attr(data-bullet);
position:relative;
top:0;
left:-50px;
}
.custom li {
padding-left:50px;
}
*/
http://jsfiddle.net/g0w989aa/1/
它使用CSS在列表项的内容之前创建自定义列表编号。问题是,如果列表项的内容超过一行,文本的对齐就无法正常工作。有没有办法正确对齐行的内容?我已经尝试将内容相对定位并为列表项提供填充(请参见示例中的注释CSS),但这也不起作用。