<!DOCTYPE html>
<html>
<head>
<style>
#frameDiv { width: 400px;
height: 170px;
margin: 20px;
position: relative;
border: solid black 1px;
background-color: rgb(205, 242, 205);
}
img { position: absolute;
z-index: 1;
width: 70px;
offset: path('M 50 80 C 150 -20 250 180 350 80') 150px -90deg / 0% 50%;
animation: moveImg 4s 1s 3;
}
svg { position: absolute;
height: 100%;
width: 100%;
left: 0;
top: 0;
}
@keyframes moveImg {
100% { offset-distance: 100%; } }
</style>
</head>
<body>
<h1>offset 属性</h1>
<div id="frameDiv">
<img src="/i/css/fish.svg" alt="fish">
<svg fill="none" stroke="gray" stroke-width="2" stroke-dasharray="5,5">
<path d="M 50 80 C 150 -20 250 180 350 80" />
</svg>
</div>
<p>在这里,使用了 'offset' 简写属性来设置 offset-path(偏移路径)、offset-distance(偏移距离)、offset-rotate(偏移旋转)和 offset-anchor(偏移锚点)的属性值:</p>
<ol>
<li>设定了动画的路径(offset-path)</li>
<li>鱼从路径起点 150 像素的位置开始移动(offset-distance)</li>
<li>鱼以恒定的 -90 度角进行旋转(offset-rotate)</li>
<li>鱼通过其尾巴末端连接到路径,位于元素的最左侧,距离顶部 50%(offset-anchor)</li>
</ol>
</body>
</html>