私はこのグリッドを持っています:
<div class="ui-grid-b">
<div class="ui-block-a">
<div class="ui-bar"> <a href="xxx.htm">
<img alt="alt..." src="image.jpg" />
</a>
</div>
</div>
<div class="ui-block-b">
<div class="ui-bar"> <a href="xxx.htm">
<img alt="alt..." src="image.jpg" />
</a>
</div>
</div>
<div class="ui-block-c">
<div class="ui-bar"> <a href="xxx.htm">
<img alt="alt..." src="image.jpg" />
</a>
</div>
</div>
<div class="ui-block-a">
<div class="ui-bar"> <a href="xxx.htm">
<img alt="alt..." src="image.jpg" />
</a>
</div>
</div>
<div class="ui-block-b">
<div class="ui-bar"> <a href="xxx.htm">
<img alt="alt..." src="image.jpg" />
</a>
</div>
</div>
<div class="ui-block-c">
<div class="ui-bar"> <a href="xxx.htm">
<img alt="alt..." src="image.jpg" />
</a>
</div>
</div>
</div>
しかし、私の画像(180X80px)は、iPhone画面(320px幅)に「cropped」と表示されます。
どうすれば自動サイズ変更できますか?
画像のCSSを設定して、画面で使用可能なすべての水平方向のスペースを自動的に占めるようにすることができます。
<style>
.ui-grid-b img {
width : 100%;
height : auto;
}
</style>
これにより、各画像がその親要素(<div class="ui-bar">
)アスペクト比を維持しながら水平方向に。
私は似たようなものを持っていて、同じ問題を抱えていました。いくつかのdivを削除して修正しました...
これを試して:
<div class="ui-grid-b">
<a href="xxx.htm">
<img alt="alt..." src="image.jpg" />
</a>
<a href="xxx.htm">
<img alt="alt..." src="image.jpg" />
</a>
</div>
私の場合は動作します(iPhoneシミュレーター、iPhone 4でテスト済み、Androidエミュレーター)
ヘッダ:
<meta charset="utf-8">
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.css" />
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js"></script>
CSS:
.ui-grid-b img {
width : 100%;
height : auto;
}