Webデザインにおいて、svg
やimg
要素をa
タグでラップする場面は多くあります。しかし、この時に時折、意図しない隙間や余白が表示されることがあります。この問題の主な原因は、svg
やimg
がインライン要素として扱われるためです。
インライン要素は、文字を配置するボックスとして振る舞うため、その下部に微小なスペースが存在することがあります。これが、特にa
タグでラップした場合に、隙間として見えることがあるのです。
この問題を解消するための簡単な方法は、svg
やimg
をブロック要素として扱うことです。これはdisplay: block;
を適用することで実現できます。
svg, img {
display: block;
}
このスタイルを適用することで、元々のインライン要素であったsvg
やimg
がブロック要素として振る舞い、余計な隙間が発生しなくなります。
このように、少しのCSSの調整だけで、サイトのデザインやレイアウトの問題を効果的に解決することができます。