0

私のウェブサイトの幅は、iPhone 2G、3G、および 4S のポートレート モードで 460px に設定されています。ただし、水平モードでは見栄えがよくありません。2倍のピクセル数が必要だと思います。

現在のビューポート タグは次のようになります。

<meta name="viewport" content="user-scalable=yes, width=460" /> 

ポートレートモードで460pxが欲しい。
ランドスケープ モードで 800px が必要です。

これは Apple のドキュメントですが、水平モードについては言及されていません: https://developer.apple.com/library/IOs/#documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html

4

1 に答える 1

1

定数の「デバイス幅」を使用してみましたか?

http://developer.apple.com/library/safari/#documentation/appleapplications/reference/SafariHTMLRef/Articles/MetaTags.html

また、次の手法を使用して、ページが読み込まれた後にメタ タグを変更しました。デバイスが縦向きと横向きの間で変化したときにメタタグを変更するように適応させることができます。

NSString* js = 
@"var img = document.getElementsByTagName( 'img' )[0];" \
"var c = 'width=' + img.width + ', height=' + img.height + ', user-scalable=yes, initial-scale=1.0, minimum-scale=0.5, maximum-scale=3.0';" \
"var h = document.createElement( 'head' ); " \
"var m = document.createElement( 'meta' ); " \
"m.setAttribute( 'name', 'viewport' ); " \
"m.setAttribute( 'content', c ); " \
"h.appendChild( m ); " \
"var html = document.getElementsByTagName( 'html' )[0];" \
"var body = document.getElementsByTagName( 'body' )[0];" \
"html.insertBefore( h, body ); " \
"";
[webView stringByEvaluatingJavaScriptFromString: js ];
于 2012-04-14T22:22:15.710 に答える