0
是否可以通過CSS創建一個只帶有SVG路徑的動畫?獲取像SVG動畫路徑的CSS動畫
CSS
html, body {
margin: 0;
height: 100%;
}
svg {
display: block;
position: absolute;
width: 90%;
height: 90%;
top: 5%;
left: 5%;
}
.path {
animation: dash 10s linear infinite;
}
@-webkit-keyframes dash {
to {
stroke-dashoffset: 0;
}
}
HTML
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 659 522" enable-background="new 0 0 659 522" xml:space="preserve" preserveAspectRatio="none">
<path class="path" width="100%" height="100%" fill="none" stroke="#00ff00" stroke-width="5" stroke-miterlimit="10" d="M656.5,2.5v517H2.5V2.5H656.5z" stroke-dasharray="2042 300" stroke-dashoffset="2342" vector-effect="non-scaling-stroke" />
</svg>
這裏是fiddle
不,因爲CSS不支持此屬性或者對其元素具有任何等同屬性。另外,您正在使用'@ -webkit-keyframes',但只是一個'animation'屬性,這對我來說不起作用。 – somethinghere
我的意思是,而不是使用SVG路徑,只用CSS創建它 – AC3
而我的意思是,CSS沒有這種選擇,也沒有什麼好的方法來模仿它。筆畫是完整的,並且在CSS中沒有偏移量,因此您不能在帶有標準HTML元素的CSS中執行此操作,只能使用SVG。不要誤解我的意思,你可能會用多個元素和嵌套來僞造它,但我認爲你的SVG解決方案可能是你想要的效果的最佳選擇。 – somethinghere