替代显示事件跟踪器的flex

时间:2016-08-13 18:06:04

标签: html css html5 css3 styles

我目前使用htmlcss制作了一个事件跟踪器。我的问题是,由于浏览器兼容性问题,我想搭乘display: flex;。有没有其他方法可以达到相同的效果?我尝试使用display:inline-block,因为没有flex所有步骤都会出现在不同的行中。

HTML:

<div class="container">
  <div class="row event">
    <div class="col-xs-3 event-step">
        <p class="event-stepnum">Step 1</p>
        <div class="progress">
            <div class="progress-bar"></div>
        </div>
    </div>
    <div class="col-xs-3 event-step complete">
        <p class="event-stepnum">Step 2</p>
        <div class="progress">
            <div class="progress-bar"></div>
        </div>
    </div>
    <div class="col-xs-3 event-step">
        <p class="event-stepnum">Step 3</p>
        <div class="progress">
            <div class="progress-bar"></div>
        </div>
    </div>
  </div>
</div>

CSS:

.event > .event-step {
  padding: 0;
  position: relative;
}

.event > .event-step .event-stepnum {
  color: #595959;
  font-size: 16px;
  margin-bottom: 5px;
}

.steps .step-on,
.steps .step-done {
  background-color: #1b7e28;
  color: #1b7e28;
  border: 1px solid transparent;
}

.progress {
  position: relative;
  border-radius: 0px;
  height: 5px;
  box-shadow: none;
  margin: 20px 0;
}

.progress > .progress-bar {
  width: 0px;
  box-shadow: none;
  background: #fbe8aa;
}

.event-step.complete > .progress > .progress-bar {
  width: 100%;
}

.row {
  display:flex;
}

JSFiddle Demo

1 个答案:

答案 0 :(得分:0)

只需将display:flex替换为display:inline-block,然后将步骤div设为固定宽度:

.event > .event-step {
  padding: 0;
  position: relative;
  width: 200px;
}
.row {
  display: inline-block;
}

https://jsfiddle.net/onk2cqhg/