スライドショーを作成しようとしている子divを持つdivがあります。子divを表示inline-block
しましたが、IE<=9を除いてすべてが見栄えがします。IE <= 9では、それぞれdiv.contentItem
が垂直に表示されます。
非同期で追加されるものが多く、新しい要素が追加されるたびに幅を再計算する必要がなかったためwhite-space: nowrap
、inline-block
(の代わりにfloat:left
)を使用しました。そのため、幅を指定せずにフロートを使用する方法がない限り、私は近づかないほうがいいと思います。div.contentItem
div.content
float:left
注Doctypeはマスターページにあり、cms内の他の多くのページで使用されているため、変更できません。回帰テストが多すぎます。
html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://www.facebook.com/2008/fbml">
<head></head>
<body>
<div class="content">
<div class="contentItem">...</div>
<div class="contentItem">...</div>
<div class="contentItem">...</div>
<div class="contentItem">...</div>
<div class="contentItem">...</div>
<div class="contentItem">...</div>
<div class="contentItem">...</div>
</div>
</body>
</html>
css
.content {
white-space: nowrap;
margin-left: 256px;
position: relative;
padding-top: 14px;
}
.contentItem {
display: -moz-inline-stack;
display: inline-block !important;
*display: inline;
margin: 0 14px 0 0;
vertical-align: top;
zoom: 1;
}