构建步骤进度栏(css和jquery)

前端之家收集整理的这篇文章主要介绍了构建步骤进度栏(css和jquery)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
你已经看到在类似paypal的网站上这种类型的进度栏的迭代。如何使用CSS和jquery设置这个?我有4页,每一页是一个步骤…所以4个步骤。

解决方法

我已经搜索了一个解决方案,将可视化的流程步骤在我的Web应用程序。我找到了以下杰出的写作史蒂芬·A托马斯:

纯CSS中的跟踪进度(Original Link now dead)

在他的方法托马斯甚至得到了只使用CSS – 没有Javascript!
在本质上,他的文章中的以下CSS代码为我做的伎俩:

<style>

    <!-- Progress with steps -->

    ol.progtrckr {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

    ol.progtrckr li {
        display: inline-block;
        text-align: center;
        line-height: 3em;
    }

    ol.progtrckr[data-progtrckr-steps="2"] li { width: 49%; }
    ol.progtrckr[data-progtrckr-steps="3"] li { width: 33%; }
    ol.progtrckr[data-progtrckr-steps="4"] li { width: 24%; }
    ol.progtrckr[data-progtrckr-steps="5"] li { width: 19%; }
    ol.progtrckr[data-progtrckr-steps="6"] li { width: 16%; }
    ol.progtrckr[data-progtrckr-steps="7"] li { width: 14%; }
    ol.progtrckr[data-progtrckr-steps="8"] li { width: 12%; }
    ol.progtrckr[data-progtrckr-steps="9"] li { width: 11%; }

    ol.progtrckr li.progtrckr-done {
        color: black;
        border-bottom: 4px solid yellowgreen;
    }
    ol.progtrckr li.progtrckr-todo {
        color: silver; 
        border-bottom: 4px solid silver;
    }

    ol.progtrckr li:after {
        content: "\00a0\00a0";
    }
    ol.progtrckr li:before {
        position: relative;
        bottom: -2.5em;
        float: left;
        left: 50%;
        line-height: 1em;
    }
    ol.progtrckr li.progtrckr-done:before {
        content: "\2713";
        color: white;
        background-color: yellowgreen;
        height: 1.2em;
        width: 1.2em;
        line-height: 1.2em;
        border: none;
        border-radius: 1.2em;
    }
    ol.progtrckr li.progtrckr-todo:before {
        content: "\039F";
        color: silver;
        background-color: white;
        font-size: 1.5em;
        bottom: -1.6em;
    }

</style>

以及他的例子中的HTML标签(我使用Grails GSP页面生成标签,动态地使用’done / todo’类):

<ol class="progtrckr" data-progtrckr-steps="5">
    <li class="progtrckr-done">Order Processing</li>
    <li class="progtrckr-done">Pre-Production</li>
    <li class="progtrckr-done">In Production</li>
    <li class="progtrckr-done">Shipped</li>
    <li class="progtrckr-todo">Delivered</li>
</ol>

希望它有帮助。对我来说工作相当好。

更新:以下(缩短)版本也很好。

ol.progtrckr {
        display: table;
        list-style-type: none;
        margin: 0;
        padding: 0;
        table-layout: fixed;
        width: 100%;
    }
    ol.progtrckr li {
        display: table-cell;
        text-align: center;
        line-height: 3em;
    }
    ... and the rest of the CSS ...

    <ol class="progtrckr">
        ...
    </ol>

display:table; table-layout:fixed; width:100%确保列表项自动调整大小,只要内容不会溢出。没有必要使用data-progtrckr-steps及其相关的CSS。

原文链接:https://www.f2er.com/css/222655.html

猜你在找的CSS相关文章