将无序列表转换为目录

时间:2012-01-17 16:22:01

标签: html css html-lists tableofcontents

参考这个小提琴:http://jsfiddle.net/exGnZ/

嗨,我正在尝试使用无序列表和引导点重现目录。不幸的是,当有很长的内容时,格式化就会崩溃。有谁知道如何让下图中的第2章与点相同?

enter image description here

这是我目前获得的代码: http://jsfiddle.net/exGnZ/

我也在这里粘贴它:

    <div>
    <ul id="toc">
    <li><span>Introduction</span> <a href="#">Chapter 1</a></li>
    <li><span> Storm clouds looming Storm clouds looming Storm clouds looming Storm clouds looming Storm clouds looming</span> <a href="#">Chapter 2</a></li>
    <li><span>Sun breaks</span> <a href="#">Chapter 3</a></li>
    <li><span>Lost and confused</span> <a href="#">Chapter 4</a></li>
    <li><span>The pot of gold</span> <a href="#">Chapter 5</a></li>
    <li><span>Nom nom nom</span> <a href="#">Chapter 6</a></li>
    </ul></div>

CSS:

    div {padding:10px;}
    #toc {
        list-style: none;
        margin-bottom: 20px;
    }
    #toc li {
        background: url(http://5thirtyone.com/sandbox/share/toc/dot.gif) repeat-x bottom left;
        overflow: hidden;
        padding-bottom: 2px;
    }
    #toc a,
    #toc span {
        display: inline-block;
        background: #fff;
        position: relative;
        bottom: -4px;
    }
    #toc a {
        float: right;
        padding: 0 0 3px 2px;
    }
    #toc span {
        float: left;
        padding: 0 2px 3px 0;
    }

3 个答案:

答案 0 :(得分:3)

以下是我的解答:JSFiddle

这种技术唯一的缺点是它需要一个固定的宽度到右侧(在这种情况下是100个像素)才能工作,但这只是一个小小的权衡。

答案 1 :(得分:3)

这个怎么样:http://jsfiddle.net/exGnZ/40/

我能在最佳状态下管理。

答案 2 :(得分:2)

我的两便士值是here

我使用相对定位而不是浮点数,并在跨度后添加了一个伪元素,以防止在ul的宽度减小时链接(?)链接。