1
1
.timeline {
2
2
--timeline-line-width : 0.2rem ;
3
+ --timeline-line-color : black;
3
4
--marker-line-width : var (--timeline-line-width );
5
+ --marker-line-color : var (--timeline-line-color );
4
6
--marker-size : 1.5rem ;
7
+ --marker-color : var (--timeline-line-color );
8
+ --marker-inner-size : 1rem ;
9
+ --marker-inner-color : white;
5
10
6
11
position : relative;
7
12
}
@@ -28,7 +33,7 @@ div.timeline__line {
28
33
}
29
34
30
35
.timeline-item__content {
31
- border : 1 px solid black;
36
+ border : 0.2 rem solid black;
32
37
padding : 1rem ;
33
38
flex : 1 ;
34
39
}
@@ -38,27 +43,46 @@ div.timeline-item__marker {
38
43
height : var (--marker-line-width );
39
44
margin-top : 2rem ;
40
45
width : 5rem ;
41
- background-color : black ;
46
+ background-color : var ( --marker-line-color ) ;
42
47
}
43
48
44
- .timeline-item__marker ::after {
49
+ .timeline-item__marker ::after ,
50
+ .timeline-item__marker ::before {
45
51
content : '' ;
46
52
border-radius : 50% ;
53
+ position : absolute;
54
+ }
55
+
56
+ .timeline-item__marker ::before {
47
57
width : var (--marker-size );
48
58
height : var (--marker-size );
49
- background-color : black;
50
- position : absolute;
59
+ background-color : var (--marker-color );
51
60
top : calc (-1 * var (--marker-size ) / 2 + var (--marker-line-width ) / 2 );
52
61
}
53
62
54
- .timeline-item--left .timeline-item__marker ::after {
63
+ .timeline-item__marker ::after {
64
+ width : var (--marker-inner-size );
65
+ height : var (--marker-inner-size );
66
+ background-color : var (--marker-inner-color );
67
+ top : calc (-1 * var (--marker-inner-size ) / 2 + var (--marker-line-width ) / 2 );
68
+ }
69
+
70
+ .timeline-item--left .timeline-item__marker ::before {
55
71
right : calc (-1 * var (--marker-size ) / 2 );
56
72
}
57
73
58
- .timeline-item--right .timeline-item__marker ::after {
74
+ .timeline-item--left .timeline-item__marker ::after {
75
+ right : calc (-1 * var (--marker-inner-size ) / 2 );
76
+ }
77
+
78
+ .timeline-item--right .timeline-item__marker ::before {
59
79
left : calc (-1 * var (--marker-size ) / 2 );
60
80
}
61
81
82
+ .timeline-item--right .timeline-item__marker ::after {
83
+ left : calc (-1 * var (--marker-inner-size ) / 2 );
84
+ }
85
+
62
86
.timeline-item--left .timeline-item__marker {
63
87
order : 1 ;
64
88
}
0 commit comments