Ich arbeite an einer Bücherregal-Benutzeroberfläche in Next.js und verwende Framer Motion für Animationen und Tailwind CSS für das Styling. Jedes Buch ist ein interaktives Li-Element mit Hover- und Klick-Funktionalität. Das Problem, mit dem ich konfrontiert bin, ist, dass, wenn ich auf ein Buch klicke, eine seltsame „Dehnungs“-Animation abläuft und ich nicht herausfinden kann, warum. Verhalten:
Wenn man mit der Maus über ein Buch fährt, wird es leicht angehoben (translate-y).
Beim Klicken , das ausgewählte Buch wird erweitert, um Details anzuzeigen.
Beim Klicken scheint sich das Buch jedoch unerwartet zu „dehnen“ oder seine Größe zu ändern, bevor es seinen endgültigen Zustand erreicht.
Hier ist der aktuelle Stand Stand dieser Ausgabe: Website
Code:
Hier ist der relevante Code:
Das Element „motion.li“ verwendet das Layout von Framer Motion, das könnte
den Dehnungseffekt verursachen.
Die Bildkomponente berechnet ihre Größe dynamisch
mit naturalWidth und naturalHeight. Könnte diese
Neuberechnung zu dem Problem beitragen?
Die Übergangs- und
Transformationsklassen von Tailwind (translate-y, Transition-all usw.) könnten
Konflikt mit dem Layout von Framer Motion.
Was ich versucht habe:
Layout aus motion.li entfernen – aber Dadurch werden die Animationen unterbrochen.
Das Deaktivieren der Tailwind-Übergangsklassen für alle Klassen – dadurch wurde das Problem nicht behoben.
Hardcodierung der Bildbreite und -höhe statt Berechnung sie dynamisch – dadurch wurde der Dehnungseffekt reduziert, aber nicht beseitigt.
Frage:
Warum passiert diese Dehnungsanimation, wenn ein Buch ist? angeklickt?
Wie kann ich den seltsamen Größenänderungs-/Streckungseffekt verhindern und gleichzeitig die Animationen für Hover und Select intakt lassen?
Für Einblicke in die Interaktion (oder Konflikte) von Tailwind CSS und Framer Motion wären wir sehr dankbar. Lassen Sie mich wissen, wenn zusätzlicher Kontext oder Code benötigt wird!
Ich arbeite an einer Bücherregal-Benutzeroberfläche in Next.js und verwende Framer Motion für Animationen und Tailwind CSS für das Styling. Jedes Buch ist ein interaktives Li-Element mit Hover- und Klick-Funktionalität. Das Problem, mit dem ich konfrontiert bin, ist, dass, wenn ich auf ein Buch klicke, eine seltsame „Dehnungs“-Animation abläuft und ich nicht herausfinden kann, warum. [b]Verhalten: [list] [*]Wenn man mit der Maus über ein Buch fährt, wird es leicht angehoben (translate-y). [*]Beim Klicken , das ausgewählte Buch wird erweitert, um Details anzuzeigen. [*]Beim Klicken scheint sich das Buch jedoch unerwartet zu „dehnen“ oder seine Größe zu ändern, bevor es seinen endgültigen Zustand erreicht. [/list] Hier ist der aktuelle Stand Stand dieser Ausgabe: Website Code[/b]: Hier ist der relevante Code: [code]// Book.js import { motion } from "framer-motion"; import Image from "next/image"; import { useState } from "react";
[/code] [b]Beobachtungen[/b]: [list] [*]Das Element „motion.li“ verwendet das Layout von Framer Motion, das könnte den Dehnungseffekt verursachen. [*]Die Bildkomponente berechnet ihre Größe dynamisch mit naturalWidth und naturalHeight. Könnte diese Neuberechnung zu dem Problem beitragen? [*]Die Übergangs- und Transformationsklassen von Tailwind (translate-y, Transition-all usw.) könnten Konflikt mit dem Layout von Framer Motion. [/list] [b]Was ich versucht habe:[/b] [list] [*]Layout aus motion.li entfernen – aber Dadurch werden die Animationen unterbrochen. [*]Das Deaktivieren der Tailwind-Übergangsklassen für alle Klassen – dadurch wurde das Problem nicht behoben. [*]Hardcodierung der Bildbreite und -höhe statt Berechnung sie dynamisch – dadurch wurde der Dehnungseffekt reduziert, aber nicht beseitigt. [/list] [b]Frage[/b]: [list] [*]Warum passiert diese Dehnungsanimation, wenn ein Buch ist? angeklickt? [*]Wie kann ich den seltsamen Größenänderungs-/Streckungseffekt verhindern und gleichzeitig die Animationen für Hover und Select intakt lassen? [/list] Für Einblicke in die Interaktion (oder Konflikte) von Tailwind CSS und Framer Motion wären wir sehr dankbar. Lassen Sie mich wissen, wenn zusätzlicher Kontext oder Code benötigt wird!
Ich arbeite an einer Bücherregal-Benutzeroberfläche in Next.js und verwende Framer Motion für Animationen und Tailwind CSS für das Styling. Jedes Buch ist ein interaktives Li-Element mit Hover- und...
Hier ist der Code
Dies ist eine Funktion, die einen Knoten nach einer angegebenen Position einfügt. Hier haben wir einen Temp- und einen PTR-Knoten. Der temporäre Knoten speichert den Knoten, nach...
Hier ist der Code
Dies ist eine Funktion, die einen Knoten nach einer angegebenen Position einfügt. Hier haben wir einen Temp- und einen PTR-Knoten. Der temporäre Knoten speichert den Knoten, nach...
Der Code, den ich dafür geschrieben habe, ist:
className='
flex justify-center items-center rounded- max-w-16 max-h-16 min-w-16 min-h-16 bg-gray-700...
Ich arbeite an einer iOS-App, bei der ich mithilfe des Apple Core Motion-Frameworks erkennen muss, wann ein Benutzer das Fahren startet und stoppt. Ich habe die folgende MotionActivityManager-Klasse...