Типографика typographyanimationtypewriter
Typewriter Effect
Эффект печатной машинки с набором текста и мигающим курсором.
Живое превью
Hello, World!
Использование
Скопируйте и вставьте этот код на вашу страницу Astro:
astro
---
import { TypewriterEffect } from 'astro-component-kit';
---
<TypewriterText text="Sample text" speed="3s">Content</TypewriterText> ---
import { TypewriterEffect } from 'astro-component-kit';
---
<TypewriterText text="Sample text" speed="3s">Content</TypewriterText> Ручная установка
Если вы не используете пакет npm, создайте файл и вставьте следующий код: src/components/lib/TypewriterEffect.astro:
astro
---
interface Props { text: string; speed?: string; }
const { text, speed = '3s' } = Astro.props;
---
<div class="tw-wrap">
<span class="tw-text" style={`--len: ${text.length}; --speed: ${speed}`}>
{text}
</span>
</div>
<style>
.tw-wrap { display: inline-block; }
.tw-text { display: block; overflow: hidden; white-space: nowrap; border-right: 3px solid #6366f1; color: #fff; font-family: monospace; font-size: 1.5rem; font-weight: 700; width: 0; animation: typing var(--speed) steps(var(--len)) forwards, blink 0.75s step-end infinite; }
@keyframes typing { from { width: 0 } to { width: 100% } }
@keyframes blink { from, to { border-color: transparent } 50% { border-color: #6366f1 } }
</style> ---
interface Props { text: string; speed?: string; }
const { text, speed = '3s' } = Astro.props;
---
<div class="tw-wrap">
<span class="tw-text" style={`--len: ${text.length}; --speed: ${speed}`}>
{text}
</span>
</div>
<style>
.tw-wrap { display: inline-block; }
.tw-text { display: block; overflow: hidden; white-space: nowrap; border-right: 3px solid #6366f1; color: #fff; font-family: monospace; font-size: 1.5rem; font-weight: 700; width: 0; animation: typing var(--speed) steps(var(--len)) forwards, blink 0.75s step-end infinite; }
@keyframes typing { from { width: 0 } to { width: 100% } }
@keyframes blink { from, to { border-color: transparent } 50% { border-color: #6366f1 } }
</style>
Краткая информация
- Категория
- Типографика
- Имя файла
TypewriterEffect.astro- Зависимости
- Нет — чистый Astro + CSS
- Теги
- typographyanimationtypewriter