Animierter Verlaufsrahmen
Zwei Farbstreifen jagen sich in einer Endlosschleife um den Rand des Buttons.
Einstellungen
Code
interface GradientBorderButtonProps {
color?: string;
radius?: number;
text?: string;
/** Segundos por vuelta del borde. */
intensity?: number;
}
export default function GradientBorderButton({
color = "#0071e3",
radius = 24,
text = "Glow-Button",
intensity = 3,
}: GradientBorderButtonProps) {
return (
<div
className="relative overflow-hidden p-[2px]"
style={{ borderRadius: radius + 2 }}
>
<div
className="absolute inset-[-100%] animate-spin"
style={{
background: `conic-gradient(from 0deg, transparent 0%, ${color} 20%, transparent 40%, transparent 60%, ${color} 80%, transparent 100%)`,
animationDuration: `${intensity}s`,
}}
/>
<button
type="button"
className="relative z-10 bg-[#f5f5f7] px-6 py-3 text-sm font-semibold text-[#1d1d1f] dark:bg-black dark:text-[#f5f5f7]"
style={{ borderRadius: radius }}
>
{text}
</button>
</div>
);
}
Prompt für KI
Füg ihn in ChatGPT, Claude oder Cursor ein und der Baustein wird mit diesen Einstellungen an dein Projekt angepasst, auch ohne React.
Mehr aus Buttons
Alle ansehen: ButtonsWofür du ihn nutzen kannst
Ein rotierender Rahmen zieht Blicke an, ohne den ganzen Button mit Farbe zu füllen. Deshalb wirkt er besonders auf dunklen Seiten: der „Auf die Warteliste“-Button bei einem Produktlaunch, ein hervorgehobener Link in der Navigation oder der Upgrade-Button in einer App. Der animierte Verlaufsrahmen ist ein Klassiker, der sich auf dunklen Seiten immer noch lohnt.
Vorsicht beim Regler für die Intensität: Er legt fest, wie viele Sekunden eine Runde dauert. Ein höherer Wert dreht also langsamer. Um die drei Sekunden wirkt es entspannt. Höchstens einer pro Bildschirm, sonst konkurrieren sie miteinander.