インラインSVGの場合は xmlns="http://www.w3.org/2000/svg" は不要

Flexbox + インラインSVG + spanあああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああ Flexbox + インラインSVG + span

メリット:transitionでアニメーションできる

デメリット:HTMLがごちゃごちゃになる。あまりにごちゃごちゃになる場合はsvg画像でもいいかも。

インラインSVG + 絶対配置 インラインSVG + 絶対配置

メリット:transitionでアニメーションできる

デメリット:HTMLがごちゃごちゃになる。あまりにごちゃごちゃになる場合はsvg画像でもいいかも。

:before :after 疑似要素で背景絶対配置 :before :after 疑似要素で背景絶対配置

メリット:HTMLはすっきりする

デメリット:画像の準備が面倒

Flexbox + :before :after 疑似要素 + span Flexbox + :before :after 疑似要素 + span

メリット:HTMLはそこまでではないけどまぁまぁすっきりする

デメリット:画像の準備が面倒

CSSボタン
CSSボタン