画面の向きの固定
Silktide は、訪問者にデバイスを特定の向きで持つことを強制していないかチェックします。画面を回転できない人もいるため、ページは縦向きでも横向きでも動作する必要があります。
ページの向きを固定する一般的な方法は2つあります。1つはブラウザーの画面の向きを固定する機能を呼び出すコード、もう1つは、デバイスが回転されるまで「デバイスを回転してください」というメッセージとともにページ全体を非表示にするスタイルです。
これが重要な理由
デバイスを物理的に回転できない人は大勢います。車いすに取り付けられたタブレット、固定スタンドに置かれたスマートフォン、またはのハードウェアに接続された画面は、常に1つの向きで設置されていることがよくあります。また、握力や運動制御に制限があり、デバイスの回転が難しい人もいます。このような訪問者にとって、1つの向きに固定されたページはまったく使えません。空白の画面や、決して満たすことのできない回転を促すメッセージが表示されるためです。
修正方法
screen.orientation.lock()の呼び出しなど、画面の向きを固定するコードを削除します。
// 問題: 横向きを強制するため、デバイスを回転できないユーザーは利用できない
screen.orientation.lock("landscape");
- 片方の向きでページを空白にするスタイルを削除します。
/* 問題: デバイスが回転されるまで全要素を非表示にする */
@media (orientation: portrait) {
body { display: none; }
}
- 代わりに、どちらの向きにも適応できるようレイアウトを設計します。向きに応じてレイアウトを調整するメディアクエリは問題ありません。ただし、ページを非表示にするために使用してはいけません。
Silktide によるテスト方法
- 各ページに埋め込まれたスクリプトを調べ、
screen.orientation.lock()や古いlockOrientation()など、画面の向きを固定する関数を呼び出しているものを報告します。 - 各ページに埋め込まれたスタイルを調べ、ページ本文に
display: noneを設定してページ全体を非表示にする、向きに関するメディアクエリを報告します。 - 向きに応じてレイアウトを調整するだけのスタイルは報告しません。は固定ではないためです。
トラブルシューティング
画面の向きの固定が外部ファイルにあります
Silktide は、ページ自体に埋め込まれたスクリプトとスタイルを調べます。別のスクリプトファイルやスタイルシートファイルから適用された固定は検出されませんが、訪問者には同じ影響があります。上記のガイダンスに従ってください。
コンテンツ上、本当に1つの向きが必要です
ピアノアプリや小切手の読み取り機能など、特定の向きが不可欠なものもあります。該当する場合は、この指摘をできます。