Добавьте эффект свечения с трассировкой мыши к компонентам React.
Добавьте эффект свечения трассировки мыши к компонентам React
Эффект свечения будет работать только при использовании мыши в качестве указателя. События касания не вызовут его.
Посмотрите это в прямом эфире на codaworks.com.
Установка
Установите пакет с помощью npm:
npm i @codaworks/react-glow
Применение
Оберните любое количество компонентов <Glow> в <GlowCapture>, который будет использоваться для отслеживания местоположения мыши.
<GlowCapture>
<span>This won't glow</span>
<Glow color='purple'>
<span className='text-black glow:text-glow/50 glow:bg-red-100'>
This will glow purple when the mouse is passed over
</span>
</Glow>
</GlowCapture>
Дети <Glow> могут сами придумать, как они будут выглядеть, когда светятся. Вы можете оставить некоторые дочерние элементы без изменений или выделить их с помощью стиля glow:.
Значение color будет доступно как переменная CSS --glow-color, а также цвет свечения Tailwind. Вы можете передать любой допустимый цвет CSS, включая значения hsl() и т. д. Конечно, вы можете использовать любой другой цвет; вы можете полностью исключить цветовую опору.
Tailwind
Добавьте плагин Tailwind, чтобы разблокировать glow: вариант и цвет glow.
tailwind.config.js
module.exports = {
...
plugins: [
require('@codaworks/react-glow/tailwind')
]
}
Как и для всех цветов в Tailwind, вы можете добавить непрозрачность, добавив процент после цвета, например bg-glow/20 для непрозрачности 20%.
Vanilla CSS
Вы можете стилизовать эффект свечения с помощью ванильного CSS:
<GlowCapture>
<span>This won't glow</span>
<Glow color='hsl(338.69 100% 48.04%)'>
<span className='glowable-text'>
This will glow pink when the mouse is passed over
</span>
</Glow>
</GlowCapture>
.glowable-text {
color: black;
}
[glow] .glowable-text {
color: var(--glow-color);
}