我需要在css的帮助下生成这样的输出......
(i) 需求是什么?
(ii) 针对哪些细分市场?
(iii) 鉴于创新...
(iv) 鉴于创新...
...等等。
请建议。
counter-increment
您可以使用属性 .write来实现这一点,如下所示:
ul{
counter-reset:item;
list-style:none;
}
li:before {
content: "("counter(item, lower-roman) ")";
counter-increment: item;
}
检查这个http://jsfiddle.net/MEBxA/
它可以工作到 IE8 及更高版本。
通常,当您想要的编号方式与简单地使用 可以实现的编号样式有任何不同时list-style-type
,您基本上有两种选择:
list-style: none
并使用计数器、生成的内容和:before
伪元素生成数字(如桑迪普的答案)。ul
要么(更安全一些)根本不使用ul
标记,但例如div
元素或table
标记。后一种方法的最简单示例:
(i) What is the demand?<br>
(ii) For what segment(s)?<br>
…
为了便于对整个列表、项目和数字的呈现进行样式设置,最好使用更详细的标记,可能达到以下效果:
<div class=ol>
<div class=li><span class=num>(i)</span> What is the demand?</div>
<div class=li><span class=num>(ii)</span> For what segment(s)?</div>
…
</div>
(使用blockquote
而不是div
作为最外层标记将极大地改进后备,即非 CSS 渲染,但它可能会导致“语义错误”标记的指责。)