max-width と width:100% の組み合わせを使用するレスポンシブなボックスを作成しようとしています。
これにより、ボックスの幅は max-width で設定されますが、親コンテナーが小さくなりすぎると、オーバーフローするのではなく、ボックスが縮小します。
これは ie9 と ff/chrome で動作していますが、ie8 標準モードでは、パディングが最大幅に追加されるようです。
例えば:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="ie=edge">
</head>
<body>
<style>
#test
{
border: 1px blue solid;
width: 100%;
max-width: 210px;
display: block;
height: 30px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
</style>
<span id="test"></span>
</body>
これにより、ie9、firefox、chrome で最大 210px 幅のボックスが作成されます。しかし、ie8 では、最大幅が 212px になるように境界線が追加されました。境界線を削除すると、ie8 では再び 210px になります。
box-sizing を content-box に変更すると役立つと思いましたが、box-sizing に違いはないようです。