タグを使うべきであると基本的にされています。タグの方ならタグで囲まれているので、中に様々な要素を追加できるという利点があるからですね。IEでの挙動いっつも独自機能を実装してWeb制作者を悩ますIEで、ボタンクリック時に中身のテキストが右に1px、下に1pxほど移動してしまうという欠点があります。CSS等で制御できればいいのですが、それ専用の擬似クラス等が用意されていないのです。タグを入れ子にして、それに対し、上記のCSSを適用させると一応解決することはできます。このためにタグを増やすというのはどうも納得がいきません。何か良い解決方法があれば教えてください。ボタンボタンなので、このような感じでボタンとして記述し、動作はJSで制御するというのがいいと思います。タグを使って表す方がいいかなという感じです。属性は必須ではなくなりました。ボタン類はアンカーという意味で用いるのもよいと思います。