mirror of
https://github.com/RGBCube/Site
synced 2025-07-30 20:47:46 +00:00
cube: make cube size a template parameter
This commit is contained in:
parent
adeca4879a
commit
e25d198cc9
3 changed files with 13 additions and 15 deletions
|
@ -29,4 +29,5 @@ prevent_zoom: true
|
|||
{{ set cube_face_top = cube_face }}
|
||||
{{ set cube_face_bottom = cube_face }}
|
||||
|
||||
{{ set cube_size = "5rem" }}
|
||||
{{ include "cube.vto" }}
|
||||
|
|
|
@ -1,37 +1,33 @@
|
|||
<style>
|
||||
:root {
|
||||
--cube-width: 5rem;
|
||||
}
|
||||
|
||||
html {
|
||||
font-size: min(9svw, 9svh, 4.5rem);
|
||||
overscroll-behavior: none;
|
||||
}
|
||||
|
||||
cube-face {
|
||||
height: var(--cube-width);
|
||||
width: var(--cube-width);
|
||||
height: {{ cube_size }};
|
||||
width: {{ cube_size }};
|
||||
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
/* Guess what? Yeah, you guessed right. Safari can't render shit. */
|
||||
.cube-face-front { transform: rotateY(0deg) translateZ(calc(var(--cube-width) / 2 - 1px)); }
|
||||
.cube-face-top { transform: rotateX( 89.99999999999999deg) translateZ(calc(var(--cube-width) / 2 - 1px)); }
|
||||
.cube-face-back { transform: rotateY(180deg) translateZ(calc(var(--cube-width) / 2 - 1px)); }
|
||||
.cube-face-bottom { transform: rotateX(-89.99999999999999deg) translateZ(calc(var(--cube-width) / 2 - 1px)); }
|
||||
.cube-face-right { transform: rotateY( 89.99999999999999deg) translateZ(calc(var(--cube-width) / 2 - 1px)); }
|
||||
.cube-face-left { transform: rotateY(-89.99999999999999deg) translateZ(calc(var(--cube-width) / 2 - 1px)); }
|
||||
.cube-face-front { transform: rotateY(0deg) translateZ(calc({{ cube_size }} / 2 - 1px)); }
|
||||
.cube-face-top { transform: rotateX( 89.99999999999999deg) translateZ(calc({{ cube_size }} / 2 - 1px)); }
|
||||
.cube-face-back { transform: rotateY(180deg) translateZ(calc({{ cube_size }} / 2 - 1px)); }
|
||||
.cube-face-bottom { transform: rotateX(-89.99999999999999deg) translateZ(calc({{ cube_size }} / 2 - 1px)); }
|
||||
.cube-face-right { transform: rotateY( 89.99999999999999deg) translateZ(calc({{ cube_size }} / 2 - 1px)); }
|
||||
.cube-face-left { transform: rotateY(-89.99999999999999deg) translateZ(calc({{ cube_size }} / 2 - 1px)); }
|
||||
</style>
|
||||
|
||||
<cube-scene class="
|
||||
h-dvh w-dvw
|
||||
flex items-center justify-center
|
||||
perspective-[calc(var(--cube-width)*3)]
|
||||
perspective-[calc({{ cube_size.replaceAll(" ", "_") }}*3)]
|
||||
">
|
||||
<cube-itself class="
|
||||
size-(--cube-width)
|
||||
transform-3d transform-[translateZ(-calc(var(--cube-width)/2-1px))]
|
||||
size-[{{ cube_size }}]
|
||||
transform-3d transform-[translateZ(-calc({{ cube_size.replaceAll(" ", "_") }}/2-1px))]
|
||||
">
|
||||
<cube-face draggable="false" class="cube-face-front"> {{ cube_face_front }} </cube-face>
|
||||
<cube-face draggable="false" class="cube-face-back"> {{ cube_face_back }} </cube-face>
|
||||
|
|
|
@ -32,4 +32,5 @@ prevent_zoom: true
|
|||
<a draggable="false" class="{{ style }}" href="/blog/">blog</a>
|
||||
{{ /set }}
|
||||
|
||||
{{ set cube_size = "5rem" }}
|
||||
{{ include "rgbcube.vto" }}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue