176 lines
3.7 KiB
Plaintext
176 lines
3.7 KiB
Plaintext
@import '../../styles/common';
|
|
@import 'mixin';
|
|
|
|
//
|
|
// Time lines
|
|
// --------------------------------------------------
|
|
|
|
.@{ns}timeline {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin-bottom: 0;
|
|
direction: ltr;
|
|
|
|
&-item {
|
|
position: relative;
|
|
text-align: left;
|
|
}
|
|
|
|
&-item:not(:last-child) &-item-content {
|
|
padding-bottom: @time-line-item-content-padding-bottom;
|
|
}
|
|
|
|
&-item-dot {
|
|
position: absolute;
|
|
top: @time-line-dot-center-gap;
|
|
|
|
&::before {
|
|
content: '';
|
|
display: block;
|
|
width: @time-line-dot-side-length;
|
|
height: @time-line-dot-side-length;
|
|
background-color: @time-line-dot-default-background-color;
|
|
border-radius: 50%;
|
|
}
|
|
}
|
|
|
|
&-item-custom-dot {
|
|
text-align: center;
|
|
|
|
&::before {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
&-item-last &-item-dot::before {
|
|
background-color: @time-line-last-dot-default-background-color;
|
|
}
|
|
|
|
&-item-tail {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: @time-line-tail-width;
|
|
background-color: @time-line-tail-default-background-color;
|
|
}
|
|
|
|
// The first tail need reserved a space.
|
|
&-item:first-child &-item-tail {
|
|
top: @time-line-dot-center-gap;
|
|
}
|
|
|
|
// Last item tail need set height.
|
|
&-item:last-child &-item-tail {
|
|
bottom: auto;
|
|
height: (@time-line-dot-center-gap + @time-line-dot-side-length);
|
|
}
|
|
|
|
&-endless &-item:last-child &-item-tail {
|
|
height: auto;
|
|
min-height: @time-line-tail-min-height;
|
|
}
|
|
|
|
&-item:only-child &-item-tail {
|
|
display: none;
|
|
}
|
|
|
|
// Align left
|
|
.time-line-align(left);
|
|
|
|
&-align-left &-item {
|
|
padding-left: @time-line-item-padding-left;
|
|
}
|
|
|
|
// Align right
|
|
.time-line-align(right);
|
|
|
|
&-align-right &-item-content {
|
|
text-align: right;
|
|
}
|
|
|
|
// Align alternate
|
|
&-align-alternate &-item-dot {
|
|
@dot-offset: (@time-line-dot-side-length / 2);
|
|
|
|
left: ~'calc(50% - @{dot-offset})';
|
|
}
|
|
|
|
&-align-alternate &-item-tail {
|
|
@tail-offset: (@time-line-tail-width / 2);
|
|
|
|
left: ~'calc(50% - @{tail-offset})';
|
|
}
|
|
|
|
&-align-alternate &-item:nth-child(2n) &-item-content {
|
|
text-align: right;
|
|
width: ~'calc(50% - @{time-line-content-side-offset})';
|
|
}
|
|
|
|
&-align-alternate &-item:nth-child(2n + 1) {
|
|
text-align: right;
|
|
}
|
|
|
|
&-align-alternate &-item:nth-child(2n + 1) &-item-content {
|
|
display: inline-block;
|
|
text-align: left;
|
|
width: ~'calc(50% - @{time-line-content-side-offset})';
|
|
}
|
|
|
|
// With time
|
|
&-with-time &-item {
|
|
display: flex;
|
|
padding-left: 0;
|
|
}
|
|
|
|
&-with-time &-item-dot {
|
|
@dot-offset: (@time-line-dot-side-length / 2);
|
|
|
|
left: ~'calc(50% - @{dot-offset})';
|
|
}
|
|
|
|
&-with-time &-item-tail {
|
|
@tail-offset: (@time-line-tail-width / 2);
|
|
|
|
left: ~'calc(50% - @{tail-offset})';
|
|
}
|
|
|
|
&-with-time &-item-time,
|
|
&-with-time &-item-content {
|
|
flex: 1 0 50%;
|
|
// In IE flex item box-sizing is invalid .
|
|
// Reference https://github.com/philipwalton/flexbugs/issues/3
|
|
.ie-max-width(50%);
|
|
}
|
|
|
|
&-align-alternate &-item:nth-child(2n),
|
|
&-with-time&-align-right &-item {
|
|
flex-direction: row-reverse;
|
|
}
|
|
|
|
&-with-time&-align-right &-item {
|
|
padding-right: 0;
|
|
}
|
|
|
|
&-with-time&-align-left &-item-time {
|
|
text-align: right;
|
|
}
|
|
|
|
&-with-time&-align-right &-item-time {
|
|
text-align: left;
|
|
}
|
|
|
|
&-with-time&-align-left &-item-time,
|
|
&-with-time&-align-right &-item-content,
|
|
&-align-alternate &-item:nth-child(2n + 1) &-item-time,
|
|
&-align-alternate &-item:nth-child(2n) &-item-content {
|
|
padding-right: @time-line-alternate-time-offset;
|
|
}
|
|
|
|
&-with-time&-align-left &-item-content,
|
|
&-with-time&-align-right &-item-time,
|
|
&-align-alternate &-item:nth-child(2n + 1) &-item-content,
|
|
&-align-alternate &-item:nth-child(2n) &-item-time {
|
|
padding-left: @time-line-alternate-time-offset;
|
|
}
|
|
}
|