折叠卡片悬浮详情动画效果
代码语言:html
所属分类:悬停
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
*,
*::before,
*::after {
position: relative;
box-sizing: border-box;
}
:root {
--easing: cubic-bezier(.7,0,.3,1);
--color-red: #E66047;
}
html,
body {
background: var(--color-red);
height: 100%;
display: -webkit-box;
display: flex;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: center;
justify-content: center;
}
#app {
font-size: 3vmin;
background: white;
width: 50vmin;
height: 90vmin;
box-shadow: 0 5vmin 8vmin rgba(0, 0, 0, 0.3);
border-radius: 0.5em;
overflow: hidden;
display: grid;
grid-template: 100% / 100%;
}
#app > [data-view] {
grid-area: 1 / 1;
max-height: 100%;
}
/* ---------------------------------- */
[data-view] {
padding: 1em;
-webkit-transition: visibility 0s linear, -webkit-transform var(--duration) var(--easing);
transition: visibility 0s linear, -webkit-transform var(--duration) var(--easing);
transition: transform var(--duration) var(--easing), visibility 0s linear;
transition: transform var(--duration) var(--easing), visibility 0s linear, -webkit-transform var(--duration) var(--easing);
}
[data-view]:not([data-active]) {
visibility: hidden;
pointer-events: none;
-webkit-transition-delay: 0s, calc(var(--duration) * 1);
transition-delay: 0s, calc(var(--duration) * 1);
}
[data-view] .overlay {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
background: rgba(0, 0, 0, 0.7);
-webkit-transition: opacity var(--duration) linear;
transition: opacity var(--duration) linear;
opacity: 0;
}
/* ---------------------------------- */
[data-view="overview"] .cards {
display: grid;
grid-template-columns: 1fr 1fr;
grid-gap: 1em;
}
[data-view="overview"] .cards #restaurant {
grid-column: 1 / -1;
}
.card {
border-radius: .5em;
backg.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0