@@ -17,17 +17,17 @@ const props = defineProps({
1717})
1818
1919const scoreBg: Record <number , string > = {
20- 0 : " bg-scale-0" ,
21- 1 : " bg-scale-1" ,
22- 2 : " bg-scale-2" ,
23- 3 : " bg-scale-3" ,
24- 4 : " bg-scale-4" ,
25- 5 : " bg-scale-5" ,
26- 6 : " bg-scale-6" ,
27- 7 : " bg-scale-7" ,
28- 8 : " bg-scale-8" ,
29- 9 : " bg-scale-9" ,
30- 10 : " bg-scale-10"
20+ 0 : " bg-scale-0 border-scale-0 " ,
21+ 1 : " bg-scale-1 border-scale-1 " ,
22+ 2 : " bg-scale-2 border-scale-2 " ,
23+ 3 : " bg-scale-3 border-scale-3 " ,
24+ 4 : " bg-scale-4 border-scale-4 " ,
25+ 5 : " bg-scale-5 border-scale-5 " ,
26+ 6 : " bg-scale-6 border-scale-6 " ,
27+ 7 : " bg-scale-7 border-scale-7 " ,
28+ 8 : " bg-scale-8 border-scale-8 " ,
29+ 9 : " bg-scale-9 border-scale-9 " ,
30+ 10 : " bg-scale-10 border-scale-10 text-white "
3131}
3232
3333const backgroundClass = computed (() => scoreBg [props .score ])
@@ -43,64 +43,19 @@ const sizeClass = computed(() => props.size)
4343<style scoped>
4444.hexagon {
4545 position : relative ;
46+ display : flex ;
47+ justify-content : center ;
48+ align-items : center ;
49+ clip-path : polygon (50% 0% , 100% 25% , 100% 75% , 50% 100% , 0% 75% , 0% 25% );
4650}
47-
48- .hexagon ::before ,
49- .hexagon ::after {
50- content : " " ;
51- position : absolute ;
52- width : 0 ;
53- left : 0 ;
54- }
55-
56- .hexagon ::before {
57- bottom : 100% ;
58- }
59-
60- .hexagon ::after {
61- top : 100% ;
62- }
63-
64- /* Small hexagon */
6551.hexagon.small {
66- height : calc (1.732 * 12px ); /* sqrt(3) * 12px */
67- width : calc (3 * 12px );
68- margin-top : calc (12px + 5px );
69- margin-bottom : calc (12px + 5px );
70- font-size : 1.3rem ;
71- }
72-
73- .hexagon.small ::before {
74- border-left : calc (1.5 * 12px ) solid transparent ;
75- border-right : calc (1.5 * 12px ) solid transparent ;
76- border-bottom : calc (1.732 / 2 * 12px ) solid transparent ;
77- }
78-
79- .hexagon.small ::after {
80- border-left : calc (1.5 * 12px ) solid transparent ;
81- border-right : calc (1.5 * 12px ) solid transparent ;
82- border-top : calc (1.732 / 2 * 12px ) solid transparent ;
52+ height : 2em ;
53+ width : 2em ;
54+ font-size : 1.5em ;
8355}
84-
85- /* Huge hexagon */
8656.hexagon.huge {
87- height : calc (1.732 * 20px ); /* sqrt(3) * 20px */
88- width : calc (3 * 20px );
89- margin-top : calc (20px + 5px );
90- margin-bottom : calc (20px + 5px );
91- font-size : 1.2rem ;
92- line-height : 2.3rem ;
93- }
94-
95- .hexagon.huge ::before {
96- border-left : calc (1.5 * 20px ) solid transparent ;
97- border-right : calc (1.5 * 20px ) solid transparent ;
98- border-bottom : calc (1.732 / 2 * 20px ) solid transparent ;
99- }
100-
101- .hexagon.huge ::after {
102- border-left : calc (1.5 * 20px ) solid transparent ;
103- border-right : calc (1.5 * 20px ) solid transparent ;
104- border-top : calc (1.732 / 2 * 20px ) solid transparent ;
57+ height : 4em ;
58+ width : 4em ;
59+ font-size : 1.5em ;
10560}
10661 </style >
0 commit comments