Угловая 7 Горизонтальная временная шкала Изменение цвета линии для каждого этапа - Bootstrap 4 - PullRequest
0 голосов
/ 07 июня 2019

Мне нужно изменить цвет горизонтальной линии для временной шкалы на основе определенного условия.

Я ищу другой цвет линии в зависимости от пройденного этапа.Как красный от A до B и зеленый от B до D.

Я не уверен, как подойти к этому, любая помощь будет полезна.

Также, пожалуйста, дайте мне знать, если какой-либо рабочий пример вИнтернет.

вот мой образец: enter image description here

#timeline-wrap {
  margin: 10% 10%;
  top: 100;
  position: relative;

}

#timeline {
  height: 5px;
  width: 100%;
  background-color: #aabbc4;
  position: relative;

}

.marker {
  z-index: 1000;
  color: #fff;
  width: 30px;
  height: 30px;
  line-height: 40px;
  font-size: 1em;
  text-align: center;
  position: absolute;
  margin-left: -25px;
  background-color: #999999;
  border-radius: 50%;
}

.marker:hover {
  -moz-transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);

  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}


.timeline-icon.one {
  background-color: rgb(249, 23, 56) !important;
}

.timeline-icon.two {
  background-color: #536295 !important;
}

.timeline-icon.three {
  background-color: #6976a2 !important;
}

.timeline-icon.four {
  background-color: #7e8aaf !important;
}


.mfirst {
  top: -13px;
}

.m2 {
  top: -13px;
  left: 32.5%
}

.m3 {
  top: -13px;
  left: 66%;
}


.mlast {
  top: -13px;
  left: 100%
}
<ul id="timeline-wrap" style="padding-left: 0">

        <div id="timeline"></div>

        <!-- This is the individual marker-->
        <li class="marker mfirst timeline-icon one">
          <i class="fa fa-pencil">A</i>
        </li>
        <!-- / marker -->
        
        <!-- This is the individual marker-->
        <li class="marker m2 timeline-icon two">
          <i class="fa fa-usd">B</i>
        </li>
        <!-- / marker -->

        <!-- This is the individual marker-->
        <li class="marker m3 timeline-icon three">
          <i class="fa fa-list">C</i>
        </li>
        <!-- / marker -->


        <!-- This is the individual marker-->
        <li class="marker mlast timeline-icon four">
          <i class="fa fa-check">D</i>
        </li>
        <!-- / marker -->



      </ul>

1 Ответ

0 голосов
/ 07 июня 2019

Я создал для него стек-блиц: заценим

С помощью ngStyle вы можете установить стиль динамически

<div [ngStyle]="{backgroundColor: getColor()}" class="timeline" ></div>

<li (click)="a = !a" class="marker mfirst timeline-icon one">
  <i class="fa fa-pencil">A</i>
</li>

Этот код является лишь примером, это лучший способ сделать это. Это должно дать вам небольшую догадку, куда вы можете идти.

 getColor(): string{
    if(this.d || this.c) {
      return 'green';
    }
    if(this.b || this.a) {
      return 'red';
    }
  }

И убедитесь, что не используете! Важный в вашем CSS. Это только для наихудших ситуаций

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...