フルスクリーンモバイルモード.どのようにハードそれはできますか?
5179 ワード
あなたがフルスクリーン無限カレンダーとフルスクリーンのコンボボックスを実装するために必要な伝統的な入力を超えて、モバイルフレンドリーなフォームを実装する必要があると想像してください.フルスクリーンについて話しましょう.あなたはそれがどのように期待するか?ハードではない-ちょうどZ -インデックスと固定位置をフルスクリーンのdivを使用します.正しい?それは私が考えた.
Online example
使いましょう
Online example
用途Reach
側注:私は試みましたreact-focus-lock , しかし、それはIOS⌃ and ⌄).
これは、ユーザーがモードのコンテンツをスクロールしたい場合を除き、動作しますが、代わりに、彼らはモーダルの背後にコンテンツをスクロールします.
Online example
用途
これは、ユーザーがスクロールし、モバイルSafariの取得の下のクロームのときに隠されているが、後には、下のクロームの外観をトリガすることが可能であり、モードの一部が非表示になりますが動作します.
Online example
用途
側注:
この種の細かい細部はフロントエンドの開発を難しくしている.この投稿が好きならmy post about the UX of images on the web .
PSDifferent browser have the different behavior of focus . 最も顕著なのは、リンクやボタンに集中することができないモバイルサファリです
チェックアウトthis GitHub repo このポストのための完全なコードのために.
フォローオンミーgithub .
試行番号1
Online example
使いましょう
div
すべての画面をカバーします.FullScreenOne {
position: fixed;
bottom: 0;
left: 0;
right: 0;
top: 0;
z-index: 1;
background: #fff;
}
タブを使用することができます⌃ and ⌄ IOSでは、モーダルのカーソルを移動します.試行番号2
Online example
用途Reach
Dialog
(前の解決に加えて).Dialog
セットaria-hidden
でのすべてのノードdocument.body
現在アクティブなダイアログを除くルート.これはダイアログ内の仮想カーソルをトラップします.側注:私は試みましたreact-focus-lock , しかし、それはIOS⌃ and ⌄).
これは、ユーザーがモードのコンテンツをスクロールしたい場合を除き、動作しますが、代わりに、彼らはモーダルの背後にコンテンツをスクロールします.
試行番号3
Online example
用途
ScrollLocky
(前の解決に加えて).ScrollLocky
ブロックの残りの部分との相互作用をブロックするreact-locky
and position: relative
体にこれは、ユーザーがスクロールし、モバイルSafariの取得の下のクロームのときに隠されているが、後には、下のクロームの外観をトリガすることが可能であり、モードの一部が非表示になりますが動作します.
試行番号4
Online example
用途
mobile-safari-fullscreen
(前の解決に加えて).モーダルが開かれるとき、それは常にブラウザクロムの底を示すのを強制します.側注:
WindowSize
を使うことができるmobile-safari-fullscreen
. 私は、これが好ましい解決策であると言います、このデモは、多くの端ケースが可能であることを示すためにより多くです.<WindowSize>
{({ height }) => (
<ul style={{ height }}>
<li />
</ul>
)}
</WindowSize>
結論
この種の細かい細部はフロントエンドの開発を難しくしている.この投稿が好きならmy post about the UX of images on the web .
PSDifferent browser have the different behavior of focus . 最も顕著なのは、リンクやボタンに集中することができないモバイルサファリです
¯\_(ツ)_/¯
.チェックアウトthis GitHub repo このポストのための完全なコードのために.
フォローオンミーgithub .
Reference
この問題について(フルスクリーンモバイルモード.どのようにハードそれはできますか?), 我々は、より多くの情報をここで見つけました https://dev.to/stereobooster/fullscreen-mobile-modal-how-hard-can-it-be-7mjテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol