本日のCSS的苦悩

社の(中身のない)webサイトを外部に公開するというので、構造を全面的に見直し中。
内部公開中はIE5系列のエラーの為にtableレイアウトを余儀なくされていたが、新テンプレートでは構造を簡素化し、cssのみでレイアウトを規定する予定。


ところで、menu部を背景色付きのdivで囲み、内部のaに:hoverで背景色を変更しているのだが、paddingを指定した内部のinline要素が、親要素のboxをはみ出すのは何故なのか。また、どうやったら解決するのか。
子要素に与えたのと同じだけのpaddingを親要素に与えることで一時的な解決を見たのだが、先程指定したbody全体のtextに対するline-heightあたりが干渉しているのか、今度は子要素が親要素の縦サイズより小さくなった。しかし親要素のpaddingを0にするとはみ出す程度の微妙なサイズで、1pxづつ調整すれば合わせられない事もないが、それでは異環境への対応に疑問が残る。
根本的な原因が判れば対処のしようもあろうが…