Bootstrap 分割式进度条

4

我真的无法想出最好的方法来完成这个任务。我尝试过使用进度条,使用单独的div,但似乎都不起作用。我在网上找到了一些尝试做这个的例子,但都没有成功。

这是我想要实现的效果:

进度条样式

这是我目前的情况:

当前情况

我似乎已经朝着正确的方向前进,但还是无法解决问题。如果可能的话,我希望只使用CSS就能完成。非常感谢任何帮助。

#breadcrumbs-two{
  overflow: hidden;
  list-style: none;
  float: right;
  padding: 0;
}

#breadcrumbs-two li{
  float: left;
  margin: 0 .5em 0 1em;
}

#breadcrumbs-two a{
  background: #ddd;
  padding: .7em 1em;
  float: left;
  text-decoration: none;
  color: #444;
  text-shadow: 0 1px 0 rgba(255,255,255,.5);
  position: relative;
}

#breadcrumbs-two a:hover{
  background: #99db76;
}

#breadcrumbs-two a::before{
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -1.5em;
  border-width: 1.5em 0 1.5em 1em;
  border-style: solid;
  border-color: #ddd #ddd #ddd transparent;
  left: -1em;
}

#breadcrumbs-two a:hover::before{
  border-color: #99db76 #99db76 #99db76 transparent;
}

#breadcrumbs-two a::after{
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -1.5em;
  border-top: 1.5em solid transparent;
  border-bottom: 1.5em solid transparent;
  border-left: 1em solid #ddd;
  right: -1em;
}

#breadcrumbs-two a:hover::after{
  border-left-color: #99db76;
}

#breadcrumbs-two .current,
#breadcrumbs-two .current:hover{
  font-weight: bold;
  background: none;
}

#breadcrumbs-two .current::after,
#breadcrumbs-two .current::before{
  content: normal;
}
<ul id="breadcrumbs-two">
                <li><a href="">Lorem ipsum</a></li>
                <li><a href="">Vivamus nisi eros</a></li>
                <li><a href="">Nulla sed lorem risus</a></li>
                <li><a href="" class="current">Current crumb</a></li>
            </ul>


请展示您的代码,并附上尝试过程。 - flppv
@flppv 我已将片段添加到原始帖子中。这是我从教程中提取的一个示例。虽然它朝着我想要的方向发展,但并不是我所期望的那种。我不指望你“重新创建”它,但一些指导会很棒。我无法使不同选项之间的间距成为对角线或像图片中那样的:first-child:before边框半径。 - Nick
你想使用进度条还是面包屑来实现? - Saravana
@sharvan 两种方法都可以。 - Nick
2个回答

2

我使用了Bootstrap的面包屑导航实现了这个功能。希望这对你有所帮助。如果需要进一步协助,请在评论中回复。

nav .breadcrumb {
    padding: 0;
    background: transparent;
}

.breadcrumb .breadcrumb-item a {
    position: absolute;
    left: 0;
    right: 0;
    top: 18px;
    font-size: 13px;
    color: #999 !important;
    z-index: 1;
    text-decoration: none;
}

.breadcrumb .breadcrumb-item {
    position: relative;
    margin: 0 15px 0 0;
    background: #575763;
    min-width: 100px;
    height: 16px;
}

.breadcrumb-item:before {
    content: "" !important;
    position: absolute;
    width: 0;
    border-top: 16px solid #575763;
    border-left: 10px solid transparent;
    left: -10px;
    top: 0;
    height: 16px;
}

.breadcrumb-item:after {
    content: "" !important;
    position: absolute;
    width: 0;
    border-top: 16px solid transparent;
    border-left: 10px solid #575763;
    right: -10px;
    top: 0;
    height: 16px;
}

.breadcrumb .breadcrumb-item:first-child {
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
}

.breadcrumb .breadcrumb-item:last-child {
    border-top-right-radius: 30px;
    border-bottom-right-radius: 30px;
}

.breadcrumb .breadcrumb-item:last-child:after {
    border-left: 15px solid transparent;
}

.breadcrumb .breadcrumb-item.active:first-child:before {
    border-top: 16px solid transparent;
}

.breadcrumb .breadcrumb-item.active {
    background: #61c988;
}

.breadcrumb-item.active:before {
    border-top: 16px solid #61c988;
}

.breadcrumb-item.active:after {
    border-left: 10px solid #61c988;
}
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
<nav aria-label="breadcrumb">
    <ol class="breadcrumb my-2">
        <li class="breadcrumb-item active"><a href="#">New</a></li>
        <li class="breadcrumb-item active"><a href="#">In-Review</a></li>
        <li class="breadcrumb-item"><a>Interview</a></li>
        <li class="breadcrumb-item"><a>Offered</a></li>
    </ol>
</nav>


0

这样的东西

ul.breadcrumbs>li {
  display: inline-block;
  list-style: none;
  background: #61C988;
  padding: 3px 8px 3px 8px;
}

ul.breadcrumbs>li:nth-child(1) {
  border-radius: 20px 0px 0px 20px;
}

ul.breadcrumbs>li:last-child {
  border-radius: 0px 20px 20px 0px;
}

ul.breadcrumbs>li.current {
  background: #575763;
}

ul.breadcrumbs>li>a {
  color: black;
  text-decoration: none;
  font-family: "Segoe UI";
}

ul.breadcrumbs>li.current>a {
  color: white;
}
<ul class="breadcrumbs">
  <li><a href="">Lorem ipsum</a></li>
  <li><a href="">Vivamus nisi eros</a></li>
  <li><a href="">Nulla sed lorem risus</a></li>
  <li class="current"><a href="">Current crumb</a></li>
</ul>


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接