<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>doc</title>
<style>
#line{
animation: lineScroll 2s linear infinite;
}
@keyframes lineScroll{
0%{
stroke-dashoffset: 300;
}
100%{
stroke-dashoffset: 0;
}
}
#circle{
transition: all 2s;
stroke-dasharray:314,314;
stroke-dashoffset:314;
}
svg:hover #circle{
stroke-dashoffset:0;
}
#rect {
stroke-width: 6px;
fill: #fff;
stroke: red;
stroke-dasharray: 20;
animation: path-animation 5s linear infinite;
}
@keyframes path-animation {
from {
stroke-dashoffset: 100%;
}
to {
stroke-dashoffset: 0%;
}
}
.star-path {
fill:none;
stroke-width:10;
stroke: #d3dce6;
stroke-linejoin:round;
stroke-linecap:round;
}
.star-fill {
fill:none;
stroke-width:10;
stroke: #ff7700;
stroke-linejoin:round;
stroke-linecap:round;
stroke-dasharray:1340;
stroke-dashoffset:0;
animation: starFill 2s ease-out infinite;
}
@keyframes starFill {
0% {
stroke-dashoffset:1340;
}
100% {
stroke-dashoffset:0;
}
}
</style>
</head>
<body>
<h1>svg</h1>
<!-- 直线滚出 -->
<svg >
<line id="line" x1="30" y1="30" x2="300" y2="30" stroke-width="20" stroke="red" stroke-dasharray="300,320"/>
</svg>
<!-- 圆形路径滚出 -->
<svg width="200" height="200" viewBox="0 0 200 200">
<circle id="circle" cx="100" cy="80" r="50" fill="gray" stroke-width="5" stroke="green" />
</svg>
<!-- 矩形虚线框边框滚动动画 -->
<svg height="100" width="300">
<rect id="rect" height="100" width="300" />
</svg>
<!-- 竖直轨迹文字动画 -->
<svg width="360" height="200" xmlns="http://www.w3.org/2000/svg">
<text font-family="microsoft yahei" font-size="40" x="0" y="0" fill="#cd0000">人
<animateMotion path="M10,80 q100,120 120,20 q140,-50 160,0" begin="0s" dur="5s" rotate="0" repeatCount="indefinite"/>
</text>
<path d="M10,80 q100,120 120,20 q140,-50 160,0" stroke="#cd0000" stroke-width="2" fill="none" />
</svg>
<!-- 五角星全绘 -->
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="500" height="500" viewbox="-500 -500 2500 2500">
<polygon points="-12 -69,-58 85,64 -14,-81 -14,41 85" class="star-path"></polygon>
<polygon points="-12 -69,-58 85,64 -14,-81 -14,41 85" class="star-fill"></polygon>
</svg>
<!-- 横向文字循环滚动 -->
<svg width="100%" height="250" xmlns="http://www.w3.org/2000/svg">
<g>
<text font-family="microsoft yahei,sans-serif" font-size="15" y="50" x="200" fill="#5F9F9F">内容2
<animate attributeName="x" from="100%" to="-200" begin="0.5s" dur="10s" repeatCount="indefinite"></animate>
</text>
</g>
</svg>
<!-- 小球折线运动 -->
<svg width="500" height="500">
<path d="M100 150 L200 50 L300 150 L400 50 Z" stroke="#ccc" stroke-width="2" fill="none" />
<circle r="20" x="150" y="0" style="fill:#336622;">
<animateMotion dur="3s" repeatCount="indefinite" rotate="auto" path="M100 150 L200 50 L300 150 L400 50 Z" />
</circle>
</svg>
<!-- 小球曲线闭合运动 -->
<svg width="120" height="120" viewBox="0 0 120 120" xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Draw the outline of the motion path in grey, along
with 2 small circles at key points -->
<path d="M10,110 A120,120 -45 0,1 110 10 A120,120 -45 0,1 10,110" stroke="lightgrey" stroke-width="2" fill="none" id="theMotionPath" />
<circle cx="10" cy="110" r="3" fill="lightgrey" />
<circle cx="110" cy="10" r="3" fill="lightgrey" />
<!-- Red circle which will be moved along the motion path. -->
<circle cx="" cy="" r="5" fill="red">
<!-- Define the motion path animation -->
<animateMotion dur="6s" repeatCount="indefinite">
<mpath xlink:href="#theMotionPath" />
</animateMotion>
</circle>
</svg>
<!-- 图片曲线运动 -->
<svg width="500" height="350" viewBox="0 0 500 350">
<!--运动的路径轨迹-->
<path style="fill:none;" stroke="#000" id="motionPath" d="M0.038,0c0,0-2.25,26.75,27.75,42.25c11.501,5.942,36.167,25.667,42.5,29.583
c5.465,3.38,37.333,22.667-11.125,55.917" />
<!--运动的图片-->
<image id="car" transform="translate(-72,-72)" style="overflow:visible;" width="144px" height="144px" xlink:href="images/light.png">
<animate attributeName="opacity" values="0;1;1;1;1;0" dur="3s" repeatCount="indefinite" />
</image>
<!--运动的相关参数 1、href链接到图片 mpath链接到路径-->
<animateMotion xlink:href="#car" dur="3s" begin="0s" fill="freeze" repeatCount="indefinite">
<mpath xlink:href="#motionPath" />
</animateMotion>
</svg>
</body>
</html>