web-dev-qa-db-ja.com

画像の自動サイズ変更を備えたjQueryMobile Grid

私はこのグリッドを持っています:

<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」と表示されます。

どうすれば自動サイズ変更できますか?

10
Fabio B.

画像のCSSを設定して、画面で使用可能なすべての水平方向のスペースを自動的に占めるようにすることができます。

<style>
.ui-grid-b img {
    width  : 100%;
    height : auto;
}
</style>

これにより、各画像がその親要素(<div class="ui-bar">)アスペクト比を維持しながら水平方向に。

25
Jasper

私は似たようなものを持っていて、同じ問題を抱えていました。いくつかの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;
   }
0
vitaminasweb