From dd79e42fcbcb0dae41c8f264bf14d41ea1513fc8 Mon Sep 17 00:00:00 2001 From: Xevion Date: Mon, 27 Nov 2023 21:13:39 -0600 Subject: [PATCH] Move glitch CSS directly into Header component, refine animation directive --- src/components/Header.astro | 102 ++++++++++++++++++++++++++++++++---- src/styles/glitch.scss | 71 ------------------------- src/styles/global.scss | 1 - 3 files changed, 92 insertions(+), 82 deletions(-) delete mode 100644 src/styles/glitch.scss diff --git a/src/components/Header.astro b/src/components/Header.astro index 141346f..d877f43 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -1,16 +1,98 @@ --- interface Props { - className?: string | null; - children?: string | null; + className?: string | null; + text?: string | null; } -const { className, children: propText } = Astro.props; -console.log(Astro.props); +const { + className, + text: propText, +} = Astro.props; const text = propText ?? "undefined behaviors"; --- + +
-
- {text} - {text} - {text} -
-
\ No newline at end of file +
+ {text} + {text} + {text} +
+ diff --git a/src/styles/glitch.scss b/src/styles/glitch.scss deleted file mode 100644 index f67b1ef..0000000 --- a/src/styles/glitch.scss +++ /dev/null @@ -1,71 +0,0 @@ -header { - .stack { - // overflow: hidden; - display: grid; - grid-template-columns: 1fr; - - &.glitch span { - animation: glitch 340ms cubic-bezier(0.46, 0.29, 0, 1.24) 1 backwards - calc(var(--index) * 120ms), - jitter 2000ms ease infinite 2s alternate-reverse; - } - - span { - font-weight: bold; - grid-row-start: 1; - grid-column-start: 1; - - --stack-height: calc(100% / var(--stacks) - 1px); - --inverse-index: calc(calc(var(--stacks) - 1) - var(--index)); - --clip-top: calc(var(--stack-height) * var(--index)); - --clip-bottom: calc(var(--stack-height) * var(--inverse-index)); - - clip-path: inset(var(--clip-top) 0 var(--clip-bottom) 0); - - animation: jitter 2000ms ease infinite 2s alternate-reverse; - - &:nth-child(odd) { - --glitch-translate: 8px; - } - - &:nth-child(even) { - --glitch-translate: -8px; - } - } - } -} - -@keyframes glitch { - 0% { - opacity: 0; - transform: translateX(-50%); - text-shadow: -2px 3px 0 red, 2px -3px 0 blue; - } - 60% { - opacity: 0.5; - transform: translateX(50%); - } - 80% { - transform: none; - opacity: 1; - text-shadow: 2px -3px 0 red, -2px 3px 0 blue; - } - 100% { - text-shadow: none; - } -} - -@keyframes jitter { - 0% { - text-shadow: -2px 3px 0 red, 2px -3px 0 blue; - transform: translate(var(--glitch-translate)); - } - 2% { - text-shadow: 2px -3px 0 red, -2px 3px 0 blue; - } - 4%, - 100% { - text-shadow: none; - transform: none; - } -} diff --git a/src/styles/global.scss b/src/styles/global.scss index 68b89d1..401260f 100644 --- a/src/styles/global.scss +++ b/src/styles/global.scss @@ -1,4 +1,3 @@ -@import "glitch"; @import "mixins"; @import "helpers"; @import "code";