我有一个Ordered列表,我需要设置#值。类似的东西:
<ol>
<li ShowValue=34>apple</li>
<li ShowValue=45>pear</li>
<li ShowValue=55>car</li>
</ol>
这样他们就会显示我指定的数字
34.apple
45.pear
55.car
有没有办法告诉李应该显示哪个号码?
答案 0 :(得分:10)
答案 1 :(得分:4)
如何获取无序列表并将数字写入内部?
<ul>
<li>34. apple</li>
<li>45. pear</li>
<li>55. car</li>
</ul>
然后你必须隐藏列表的子弹。使用
ul {
list-style-type: none;
}
为此。
答案 2 :(得分:3)
HTML方法:
<ol start="34">
<li>apple</li>
<li>pear</li>
<li>car</li>
</ol>
这在HTML4中已弃用,支持CSS生成的内容:
<style type="text/css">
.mylist { counter-reset: mycounter 34; }
.mylist li { counter-increment: mycounter; list-style-type: none; }
.mylist li:before { content: counter(mycounter) ". "; }
</style>
<ol class="mylist">
<li>apple</li> ...
</ol>
这有一些优点,你可以让列表在不重置的情况下运行(如果你在之前的列表中有33个其他东西)。但它在IE6 / IE7中不起作用,所以你现在可以忘记它。
<ol start>
(和<li value>
)的弃用是一个有争议的问题。许多人(包括我自己)认为这是一个错误,因为列表编号比继续列表的常见情况中的内容更接近内容。虽然HTML黑客无疑是令人讨厌的,但IMO的CSS解决方案更糟糕。
无论如何,HTML5重新包含这些属性,因此它们不会消失。如果继续<ol>
是必需的,我会坚持使用HTML start
/ value
属性,并使用HTML4 / XHTML1 Transitional DOCTYPE或HTML5。
答案 3 :(得分:2)
这取决于HTML的生成方式。如果它是静态的,那么只需输入值就可以了:
<li value="35">35.apple</li>
如果它是在服务器端生成的,那么您可以将其添加到服务器代码中。
第三种方法是使用jQuery在渲染后修改内容。
答案 4 :(得分:0)
不要使用属性输出数值。这不是列表项的用途,并且以这种方式使用它违反了元素语义。 ol元素是有序列表。这意味着该列表中的列表项具有枚举的元数据值,该值表示与无序列表相对的排序,其没有元数据枚举,因此仅仅是列表项的集合,而不考虑列表项的位置相对于其他列表项。
您正在尝试的是演示功能。 HTML不是表示语言。使用应该使用CSS:
#custom-item:before {
content: "35.";
}
有关详细信息,请参阅此文章:http://www.alistapart.com/articles/taminglists/