あなたのフィドルのデモを見て、私はこの答えをThirtyDot(ここでフィドル)で見つけ、右に流れるコンテンツが正しくフィットするように同じことをするように適応しました。スクロール機能が完全に正しいわけではありませんが、お知らせください。UL
これはand以外の要素でも機能するはずLI
ですが、マークアップを変更して確認していません。
もちろん、これは奇妙で素晴らしいdisplay: table-
プロパティを使用しています。そうすることで、一部のレガシーブラウザではサポートされないことになりました。いつ使用できますか? を参照してください。サポートの詳細については。
私は以下をテストしました:
Firefox 13 -動作するChrome 最新-動作するOpera 11.67 -動作するIE 8 -動作するIE 9 -動作するIE 7 -動作しないSafari -未テスト
したがって、IE7 のサポートが重要な場合、少なくともそのブラウザーでは機能しません。しかし、私が何かを誤解していない限り、それは他のすべてでうまく機能します.
マークアップ
<div>
<div class="super-scroller">
<ul class="horizontal-fit">
<li class="outer-block"><span class="inner-block"></span></li>
</ul>
</div>
</div>
CSS
.super-scroller {
border: 1px solid green;
overflow-x: scroll;
padding: 5px;
margin: 10px auto;
width: 90%;
}
.horizontal-fit {
display: table;
border: 1px solid blue;
}
.horizontal-fit .outer-block {
display: table-cell;
}
.horizontal-fit .inner-block {
display: block;
border: 1px solid red;
text-align: center;
margin: 5px;
width: 100px;
height: 100px;
}
http://jsfiddle.net/suJ3d/2/
インタラクティブなデモ:
http://jsfiddle.net/userdude/suJ3d/5/embedded/result/