これのうまい方法がないものかと思案してました。
とりあえず見た目が同じように表示させるだけならiPhone3に合わせて作ってdevice-widthでアレコレすれば同じに見えますから。
でもやっぱりやっぱり綺麗に表示したいというユーザーも結構います。
そこで思いついたのがjavascriptによる方法とユーザーエージェントを使う方法。
javascriptの方は通信が倍発生することになりますが、読ませたjavascriptで画面のサイズなんかを取得して、それをサーバー側とやりとりさせてiPhoneの3と4を識別する方法。
ユーザーエージェントの方はiPhone3GがiOS4.3には対応していない事に着目。
iOS4.3以上ならiPhone4でそれ以下ならiPhone3Gという振り分け。
し・か・し
iPhone4でアップデートしてない場合はどうすんねん?
とか
3Gは識別出来るけど3GSは?
とか
色々とあったりしたので没。
通信とか処理の関係で複雑かつ重くなるのでJavascriptの方も断念。
viewportやdevice-widthで調整するのが無難かな~という考えに落ち着きました。
関連記事