Замените определение Modal в вашей ссылке следующим кодом.Это заставит модальный вход сверху и выход снизу.
Основная идея состоит в том, чтобы сделать выход div с противоположной стороны видимым образом и вернуться к началу координат невидимым способом.
const Modal = posed.div({
enter: {
y: 0,
opacity: 1,
delay: 300,
transition: {
y: { type: 'spring', stiffness: 1000, damping: 15 },
default: { duration: 300 }
}
},
exit: {
y: -50,
opacity:0,
transition: {y:({from,to})=>(
{ type: 'keyframes', values: [from, 50, to], times: [0, 0.99, 1]}),
opacity: ({ from, to }) => (
{ type: 'keyframes', values: [from, 0, to], times: [0, 0.99, 1] })
}
}
});