WinIE7の環境下においてある特定の条件を満たしてしまうと、横幅が指定した値より大幅に大きくなり、横スクロールバーが出てしまうというバグが見つかりました。

サンプル:

http://css-happylife.com/template/09/

原因は、ある条件下でfloat:rightを指定したとき、IE7は親のボックスがサイズ指定されていても、ソレを無視して右に行ってしまうからだと思います。
さらにソコに特定の条件が重なると発生。

  • floatでrightを指定している
  • リンクを貼っている
  • a要素をdisplay:blockにしている
  • a要素のmarginでマイナス値を指定している

上記要素が具体的にどのように絡むと発生するのかイマイチわかってないですが、右を基点とする場合があやしいと思う。

また、positionなどで、rightを基点に指定した場合にも発生するかもしれません。

とりあえずサンプルの場合だと、p要素に横幅を指定してあげるか、マイナス値の指定を取ればなおります。