IE8 + overflow: hidden + DXImageTransform.Microsoft.Matrix で 1px はみ出る

IE8 では、overflow: hidden がちゃんと実装されていないようです。

<!DOCTYPE>
<html><head><title></title><style>
.frame {
  position: absolute;
  width: 180px;
  height: 130px;
  overflow: hidden;
}
.matrix {
  -ms-filter: 'progid:DXImageTransform.Microsoft.Matrix(M11=0.99862,M12=-0.05233,M21=0.01570,M22=0.29958,Dx=20,Dy=6)';
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.99862,M12=-0.05233,M21=0.01570,M22=0.29958,Dx=20,Dy=6);
}
</style></head><body>
  <div class="frame" style="top: 10px; left: 10px">
    <div class="matrix" style="position: absolute">
      <img src="rhino.jpg" />
    </div>
    <div style="positon: absolute; background-color: skyblue">
    clipping area<br />
    clipping area<br />
    clipping area<br />
    clipping area<br />
    clipping area<br />
    </div>
  </div>
  <div class="frame" style="top: 120px; left: 10px">
    <div class="matrix" style="position: absolute">
      <img src="http://uupaa-js-spinoff.googlecode.com/svn/trunk/uupaa-excanvas.js/demo/images/rhino.jpg" />
    </div>
    <div style="positon: absolute; background-color: skyblue">
    clipping area<br />
    clipping area<br />
    clipping area<br />
    clipping area<br />
    clipping area<br />
    </div>
  </div>
</body></html>

上記の HTML を IE8 で表示するとこのようにレンダリングされます。
# rhino.jpg を http://uupaa-js-spinoff.googlecode.com/svn/trunk/uupaa-excanvas.js/demo/images/rhino.jpg からダウンロードして、ローカルPC に保存してから実行してください。

↓ローカルPC 上のファイルを表示すると、右側に 1px はみでてる

↑ネットワーク上のファイルを表示すると、はみでてない(ように見えるけど…)


ローカル PC のファイルを表示している場合は、クリッピング領域から1px はみ出ているのが分かるでしょうか。

ネットワーク上のファイルを表示している場合は問題ないように見えますが、他のタブに移動したりブラウザを最小化⇒元に戻す を行うと、やはり 1px はみ出します。


↑再表示させると、はみでてる。

レンダリングモード(標準準拠 / Quirks, IE8 / IE7 / IE5) に関係なく発生するようです。

IE6, IE7 では発生しません。

1px はみだすぐらい、問題にならないのでは?

uupaa-excanvas.js の VML モードでレンダリングの不具合として発現します(IE8で見てください)
http://uupaa-js-spinoff.googlecode.com/svn/trunk/uupaa-excanvas.js/demo/3_1_canvas_drawimage+scale.html

右側に浮かんでいる謎の一本の縦スジがそれです。

私の中では、かなり大きな問題です。