使用CSS自动生成HTML中的编号列表#第二部分
在中,我一直在使用CSS为使用CSS自动生成HTML中的编号列表#第二部分,html,css,Html,Css,在中,我一直在使用CSS为标记创建自动生成的列表编号。在另一个任务中,我需要创建另一个列表,该列表的标题位于列表的中间,如下图所示 上面的例子可以用下面的代码实现 HTML <ol class="main"> <span class="title">Title</span> <li> Content </li> <li> Content </li
标记创建自动生成的列表编号。在另一个任务中,我需要创建另一个列表,该列表的标题位于列表的中间,如下图所示
上面的例子可以用下面的代码实现
HTML
<ol class="main">
<span class="title">Title</span>
<li>
Content
</li>
<li>
Content
</li>
<span class="title">Title</span>
<li>
Content
</li>
</ol>
但是,此代码在某些浏览器(如Opera)中不起作用。这是因为在HTML5中,
标记不能嵌套在元素
中
可以在Firefox、Chrome和Internet Explorer中使用。您可以将
嵌套在无序列表中,并为每个列表指定一个开始位置:
<ul class="main">
<li>Title Of Section
<ol>
<li>Content 1</li>
</ol>
</li>
<li>Title Of Section
<ol start="2">
<li>Content 1</li>
<li>Content 2</li>
<li>Content 3</li>
</ol>
</li>
</ul>
- 章节标题
- 内容1
- 章节标题
- 内容1
- 内容2
- 内容3
我把它放在一起,使用jquery自动更新每个有序列表的atart位置。您可以将
嵌套在无序列表中,并为每个列表分配一个起始位置:
<ul class="main">
<li>Title Of Section
<ol>
<li>Content 1</li>
</ol>
</li>
<li>Title Of Section
<ol start="2">
<li>Content 1</li>
<li>Content 2</li>
<li>Content 3</li>
</ol>
</li>
</ul>
- 章节标题
- 内容1
- 章节标题
- 内容1
- 内容2
- 内容3
我把它放在一起,使用jquery自动更新每个有序列表的atart位置。它在Chrome 26和FF 20中工作(没有在其他浏览器上测试)。与前面的问题不同的是,您不需要每次都重置计数器
/* Don't reset every time!!! */
/* ol.inner {counter-reset:section;} */
ol.inner li {counter-increment:section;}
ol.inner li:before {content: counters(section,"") ". ";}
在Chrome 26和FF 20中都可以使用(还没有在其他浏览器上测试过)。与前面的问题不同的是,您不需要每次都重置计数器
/* Don't reset every time!!! */
/* ol.inner {counter-reset:section;} */
ol.inner li {counter-increment:section;}
ol.inner li:before {content: counters(section,"") ". ";}
嗯,这是违反规则的(在所有版本的HTML中),所以更好的解决方案是先找到有效的HTML,然后检查它在浏览器中是否有效。这就是我一直在寻找的答案。我想出了一个在Firefox和Opera中运行得很好的方法。不幸的是,不是在IE9或Chrome中。很抱歉回到绘图板…好吧,这是违反规则的(在所有版本的HTML中),所以更好的解决方案是先找到有效的HTML,然后检查它是否在浏览器中工作。这就是我一直在寻找的答案。我想出了一个在Firefox和Opera中运行得很好的方法。不幸的是,不是在IE9或Chrome中。很抱歉回到绘图板…谢谢你的回复。我希望避免使用javascript:)谢谢你的回复。我希望避免使用javascript:)