从中心而不是从左侧向外扩展的动画效果可以通过以下步骤实现:
以下是一个示例代码,演示了如何实现从中心而不是从左侧向外扩展的动画效果:
HTML代码:
<div class="container">
<div class="animation"></div>
</div>
CSS代码:
.container {
position: relative;
width: 200px;
height: 200px;
margin: 0 auto;
}
.animation {
position: absolute;
top: 50%;
left: 50%;
width: 0;
height: 0;
background-color: #ff0000;
transform: translate(-50%, -50%);
transition: width 1s ease-out, height 1s ease-out;
}
.animation::before,
.animation::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 0;
height: 0;
background-color: #ff0000;
transform: translate(-50%, -50%);
transition: width 1s ease-out, height 1s ease-out;
}
@keyframes expand {
0% {
width: 0;
height: 0;
}
50% {
width: 200px;
height: 200px;
}
100% {
width: 0;
height: 0;
}
}
.animation:hover {
animation: expand 2s infinite;
}
.animation:hover::before,
.animation:hover::after {
animation: expand 2s infinite;
}
在这个示例中,容器元素的宽度和高度为200px,并通过设置左右边距为auto来实现水平居中。动画效果通过:hover伪类选择器触发,当鼠标悬停在容器元素上时,动画开始播放。通过关键帧动画expand,容器元素和伪类元素的宽度和高度在动画序列中逐渐变化,实现了从中心向外扩展的效果。
领取专属 10元无门槛券
手把手带您无忧上云