iPhone 用 Web サイト設定まとめてみた

iPhone および iPhone 用 Safari に対しての Web サイト側で設定できる項目をまとめてみました。

Web クリップ用アイコンの設定

デモページ

iPhone 用 Safari には、Webページへのリンクをホームスクリーンに配置できる Web クリップという機能があります。この機能を使うことによって、ホームスクリーン上に他の iPhone アプリのアイコンと並んで、 Web ページへ飛ぶアイコンを設置することができます。

この時、Web クリップ用に何も設定をおこなっていない場合、アイコンにはそのページのスクリーンショットが使用されます。

Web クリップのアイコンを独自に設定したい場合は HTML 上で apple-touch-icon を指定します。スクリーンショットではすこし見栄えが悪いので、サイトロゴや favicon に使用しているアイコンなどを設定するのが良いでしょう。

独自にアイコンを設定する場合、画像サイズに注意が必要です。iPhone や iPad などデバイスによって解像度やデバイスピクセル比の違いなどから最適な画像サイズが異なります。現在推奨されているサイズは以下のようになっています。

App Icon – Apple Developer

iPhone(Plusシリーズ、X、XS、XS Max) 180px x 180px
iPhone(上記以外) 120px x 120px
iPad Pro 167px x 167px
iPad、iPad mini 152px x 152px

使用できる画像フォーマットはPNGのみです。ドキュメントルートに apple-touch-icon.png という名前で配置しておけばサイト全体に適用されます。ただし、上記例のように各デバイスごとに最適なサイズを使用したい場合や、サイト全体ではなくページごとに設定したい場合は HTML で明示的に指定する必要があります。

HTML で明示的に指定する場合は link タグを使用します。

<link rel="apple-touch-icon" href="apple-touch-icon_120px.png">
<link rel="apple-touch-icon" sizes="152x152" href="apple-touch-icon_152px.png">
<link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon_180px.png">
<link rel="apple-touch-icon" sizes="167x167" href="apple-touch-icon_167px.png">

上記のように記述すれば自動的に最適なサイズが計算され、適切な画像ファイルが使用されるようになります。

適切なサイズの画像ファイルが見つからない場合はそれより大きいサイズの画像が使用されます。そのため、現時点で一番大きいサイズである 180px x 180px さえ用意しておけばそれなりに見栄え良く表示されるようになります

iPhone の Simulator で検証してみたかったのですが、どうやら実機でないとうまく再現できないようです。残念。

ちなみにこの設定は apple-touch-icon という名前ですが、設定したアイコンはAndroid の Chrome や Firefox のホーム画面へ追加機能にも使用されます。その際ブラウザ間で使用されるアイコンサイズが異なるっぽいので実際に使用する際は検証した方が良いでしょう。

スタンドアロンモードの設定

スタンドアロンモードは iPhone 用 Safari の機能です。スタンドアロンモードに設定すると、Web クリップから起動した際の見え方を変更することができます。

スタンドアロンモードに設定するには以下の HTML を追加します。

<meta name="apple-mobile-web-app-capable" content="yes">

スタンドアロンモードに設定することで Safari の UI (URLバーなど)がなくなり、ネイティブアプリにように表示されます。

起動時のスプラッシュ画像を設定

スタンドアロンモードにすると Web クリップから起動した時にスプラッシュ画像を表示できるようになります。

スプラッシュ画像の指定は以下の HTML で行います。

<link rel="apple-touch-startup-image" href="./launch.png">

画面サイズに合わせて複数指定したい場合はちょっとめんどくさそうです。

Adding Custom iOS Splash Screens To Your Progressive Web App – Medium

各デバイスの画面サイズは以下で確認できます。

Launch Screen – Apple Developer

ステータスバーの外観を設定

スタンドアロンモードではステータスバーの外観も変更することができます。

変更するには link タグで apple-mobile-web-app-status-bar-style を設定します。

<meta name="apple-mobile-web-app-status-bar-style" content="black">

content の値には black または black-translucent が設定できるようです。

black に設定するとステータスバーは黒くなります。(デモページ

black-translucent に設定するとステータスバーは透明になります。(デモページ

電話番号の自動リンクを無効化

Safari では文中に電話番号があると自動的にリンクに変換されます。これを無効化するには meta タグを使用します。

<meta name="format-detection" content="telephone=no">

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です