iPhone、iPad、Android、BlackBerry用のアプリを作成しています。アプリはポートレートモードでのみ動作する必要があります(つまり、モバイルデバイスを横向きに回転させても何も起こりません)。アプリは、解像度に応じて異なる方法で表示する必要があります。
- 画面幅が240px未満の場合:マイクロモード(主にBlackBerry用)
- それ以外の場合、画面幅が480px未満の場合:スモールモード(通常の解像度のモバイルデバイス用)
- それ以外の場合、画面幅が767px未満の場合:中モード(iPhone 4以降などの高解像度モバイルデバイスの場合)
- それ以外の場合(画面幅> = 768px):ビッグモード(タブレット用)
ブラウザでウィンドウのサイズを変更しようとすると、すべてが正常に機能します。ビューポートのサイズに応じて、すべての要素のサイズが変更され、正しく再配置されます。私が直面している唯一の問題はiPhone4にあります(そしておそらく同じことがiPhone4SとiPhone5でも起こります)。実際、画面幅が640pxであるにもかかわらず、中モードではなく小モードを使用しています。ビューポートメタを次のように指定しました。
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, target-densitydpi=device-dpi" />
なぜこれが起こるのか、そしてそれを修正する方法を誰かが知っていますか?
どうもありがとうございます。