| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265 |
- /* ========================================================================
- Component: timeline
- ========================================================================== */
- $timeline-badge-size : 36px;
- $timeline-datetime-height : 20px;
- $timeline-separator-width : 120px;
- // Timeline container
- // --------------------------------
- .timeline,
- .timeline-alt {
- list-style: none;
- padding: 0 0 20px;
- position: relative;
- z-index: 0; // Timeline central line
- @include clearfix();
- &:before {
- position: absolute;
- top: 0;
- bottom: 0;
- content: " ";
- width: 1px;
- background-color: #d1d2d3;
- left: $timeline-badge-size / 2;
- } // clear all float element using a last item
- .timeline-end {
- float: none;
- clear: both;
- } // change popover default colors to use no title
- .popover {
- &.left>.arrow:after {
- border-left-color: #fff;
- }
- &.right>.arrow:after {
- border-right-color: #fff;
- } // but restore the color if we use a title
- &.left>.popover-title+.arrow:after {
- border-left-color: $popover-arrow-color;
- }
- &.right>.popover-title+.arrow:after {
- border-right-color: $popover-arrow-color;
- }
- } // Timeline list itmes
- // --------------------------------
- >li {
- @include clearfix();
- margin-bottom: 20px;
- &.timeline-separator {
- position: relative;
- float: none;
- clear: both;
- margin: 0 auto;
- padding: 40px 0;
- &:first-child {
- padding-top: 0;
- }
- &:before {
- content: attr(data-datetime);
- display: inline-block;
- width: $timeline-separator-width;
- text-align: center;
- padding: 0 20px;
- line-height: 30px;
- background-color: #b6c5da;
- color: #fff;
- }
- }
- } // Timeline card
- // --------------------------------
- >li>.timeline-card {
- margin-left: $timeline-separator-width / 2; // Popover inside timeline cards
- .popover {
- position: relative;
- display: block;
- margin: 0;
- width: 100%;
- max-width: none;
- .arrow {
- top: $timeline-badge-size/2;
- display: none;
- }
- .popover-content {
- .popover-title {
- background-color: transparent;
- border: 0;
- padding-left: 0;
- padding-top: 0;
- }
- }
- }
- } // Timeline Date
- // --------------------------------
- >li>.timeline-date {
- margin: -$timeline-datetime-height 0 0;
- display: block;
- height: $timeline-datetime-height;
- line-height: $timeline-datetime-height;
- font-size: 13px;
- >time {
- &:after {
- content: attr(datetime);
- }
- }
- } // Timeline badges
- // --------------------------------
- >li>.timeline-badge {
- position: absolute;
- left: 0;
- width: $timeline-badge-size;
- height: $timeline-badge-size;
- border-radius: 500px;
- line-height: $timeline-badge-size;
- font-size: 1em;
- text-align: center;
- color: #fff;
- background-color: #999;
- z-index: 100; // Color variants
- &.primary {
- background-color: $primary;
- }
- &.success {
- background-color: $success;
- }
- &.warning {
- background-color: $warning;
- }
- &.danger {
- background-color: $danger;
- }
- &.info {
- background-color: $info;
- }
- &.inverse {
- background-color: $inverse;
- }
- &.green {
- background-color: $green;
- }
- &.pink {
- background-color: $pink;
- }
- &.purple {
- background-color: $purple;
- }
- &.dark {
- background-color: $dark;
- }
- &.yellow {
- background-color: $yellow;
- }
- }
- }
- .timeline-alt {
- .popover .arrow {
- display: block !important;
- }
- }
- // Timeline title
- // --------------------------------
- .timeline-title {
- margin-top: 0;
- color: inherit;
- }
- // Timeline Body
- // --------------------------------
- .timeline-body>p,
- .timeline-body>ul {
- margin-bottom: 0;
- }
- .timeline-body>p+p {
- margin-top: 5px;
- }
- // Timeline for Desktops
- // --------------------------------
- @include media-breakpoint-up(lg) {
- .timeline {
- &:before {
- left: 50%;
- margin-left: ($timeline-badge-size/2);
- }
- >li {
- float: left;
- clear: left;
- width: 45%;
- &.timeline-inverted {
- float: right;
- clear: right;
- margin-top: 50px;
- }
- }
- >li.timeline-separator {
- text-align: center;
- &:before {
- margin-left: ($timeline-badge-size);
- }
- }
- >li>.timeline-badge {
- left: 50%;
- margin-left: 0;
- }
- >li>.timeline-date {
- float: none;
- position: absolute;
- width: 40%;
- left: 50%;
- top: $timeline-badge-size / 2;
- margin-left: $timeline-badge-size * 1.5;
- margin-top: -($timeline-datetime-height/2);
- }
- >li>.timeline-card {
- margin: 0;
- &:before {
- border-left-width: 15px;
- border-right-width: 0;
- top: 26px;
- right: -15px;
- left: auto;
- }
- &:after {
- border-left-width: 14px;
- border-right-width: 0;
- top: 27px;
- right: -14px;
- left: auto;
- }
- .popover .arrow {
- display: block;
- }
- } // Timeline inverted
- // --------------------------------
- >li.timeline-inverted {
- >.timeline-card {
- padding-left: $timeline-badge-size;
- }
- .timeline-date {
- left: auto;
- right: 50%;
- width: auto;
- margin-left: 0;
- margin-right: $timeline-badge-size;
- }
- }
- }
- }
|