ボタン要素にテキストやアイコンを重ねる場合には、「ボックス」エレメントを使うと便利です。
ユーザー体験を良くするためには、ボタン要素の中のテキスト、アイコン、どのエリアをクリックしても、リンク遷移やステート遷移ができるようにしたいと思います。
単純にボタン、テキスト、アイコンのエレメントを並べるだけだと、全てのエレメントに対して「クリック時の動作」(リンク遷移やステート遷移)を設定する必要がありますが、
ボックスエレメントの中に、ボタン、テキスト、アイコンのエレメントを並べると、ボックスエレメントに対してのみ「クリック時の動作」(リンク遷移やステート遷移)を設定すれば、ボックス内のどのエリアをクリックしても、期待通りの動作になります。