次のスニペットは、JEisenbergのSVGEssentialsの例11-9からマイナーな変更を加えて削除されています。
<!DOCTYPE html>
<html>
<head><title>title</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1"
width="300" height="200" viewBox="0 0 300 200">
<circle cx="60" cy="60" r="30"
style="fill: #ff9; stroke: gray; stroke-width:10;">
<animateColor attributeName="fill"
begin="0.5s" dur="2s" from="#ff9" to="red" fill="freeze"/>
<animateColor attributeName="stroke"
begin="0.5s" dur="2s" from="gray" to="blue" fill="freeze"/>
</circle>
</svg>
</body>
</html>
コードの目的は、塗りつぶしと線の色が2秒の間隔で#ff9
黄色と灰色(または)から赤と青(または)に変化する円を表示することです。
Firefoxでこのページにアクセスすると、輪郭が灰色の黄色い円が表示されますが、色が変わることはありません。
意図した効果を達成するために
上記のコードをどのように変更する必要がありますか?
PS:確かに、アイゼンバーグの本はかなり古い(2002)ですが、AFAICTの構文animateColor
は、彼が説明したとおりです。また、FWIW、Firefoxは、同じ本から試した他のアニメーションの例を正しく表示します。