お世話になっております。
フッター領域の、fixedメニューについての質問です。
androidだと希望通りに固定されていますが、
iphoneだとスクロールしたときに、fixedフッターメニューが上下に動きます。
iphoneでも画面下部で固定されたままにしたいです。
【以下、HTML全文】
<html Lang="ja"> <head> <meta charset="utf-8"> <title>test</title> <meta name="viewport" content="width=device-width"> <!--************ noindex ************--> <meta name=”robots” content=”noindex” /> <!--*********************************--> <link rel="stylesheet" href="style.css"> <link href="https://use.fontawesome.com/releases/v5.6.1/css/all.css" rel="stylesheet"> <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script> </head> <body> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p><p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p><p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <p>テストテストテスト</p> <div class="FixedF_M"> <a href="https://"><i class="fas fa-map-marker-alt"></i><span>MAP</span></a> <a href = "tel:080"><i class="fas fa-phone"></i><span>TEL</span></a> <a href="#" id="BackTopBtn"><i class="fas fa-arrow-up"></i><span>TOP</span></a> </div> <script> $(function() { if ((navigator.userAgent.indexOf('iPhone') > 0 && navigator.userAgent.indexOf('iPad') == -1) || navigator.userAgent.indexOf('iPod') > 0 || navigator.userAgent.indexOf('Android') > 0) { var bH = $('.FixedF_M').height(); $('body').css('padding-bottom',bH+'px'); $('.FixedF_M').css('visibility','visible'); }else{ $('.FixedF_M').css('display','none'); } }); </script> </body> </html>
【以下、CSS全文】
*::before,*::after, * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; -webkit-transition: .4s margin ease-out; -moz-transition: .4s margin ease-out; -ms-transition: .4s margin ease-out; -o-transition: .4s margin ease-out; transition: .4s margin ease-out; } body { margin:0; } .FixedF_M{ display: flex; visibility:hidden; width:100%; position: fixed; left: 0; bottom:0; text-align:center; background-color:black; justify-content: space-around; } .FixedF_M .fa-phone,.fa-arrow-up,.fa-map-marker-alt { font-size: 3em; color: white; padding: 10px; transform: scale(-1, 1); } .FixedF_M span { display: block; font-size: 14px; text-decoration: none; padding-bottom: 5px; } .FixedF_M a { text-decoration: none; font-weight: bold; color:white; }
よろしくお願いします。
追記(画像)
本当に一瞬だけの症状なので、スクショとるのにけっこう苦戦しました・・・。
(スクショした頃には元の位置に戻ったりするので)
わかりづらい画像ではありますが、伝わると幸いです。
※下のバーはiphoneの仕様です。
そこが大体ではありますが、ディスプレイ最下部です。目安になるかと思います。
動く前と、動いた後のキャプチャをください。
iPhone SafariのUI上、防ぐのが不可能な場合があるように思えます。
実際にコードで試してみたのですが、問題なく下についているように感じます。もし、safariのUIのことを言っているのであれば、難しいと思います。
>miyabi_takatsukさん
コメントありがとうございます。
症状が出てるのは、知人のiphoneなのですが、頼んでみます。
>LanHmaさん
コメントありがとうございます!
そうなのですね!UIというのは仕様上ということでしょうか><
自分もPCではありますが、safariブラウザですと、
問題なく表示されていたり、開発者ツールでもiphoneが問題なく表示されていますので、悩ましいところです・・・
開発ツールだと、完全に実機と同じ動きとはなりませんからね・・・。
Macをお使いなのであれば、Xcodeをインストールしたら自動で入る、
Simulatorアプリケーションを使い、検証すると、実機とほぼ同じ動きが再現可能です。
実機をお持ちでないなら、そのように検証するといいでしょう。
UI上できないかもとも、それでご理解いただけるかと思います。
>miyabi_takatsukさん
そうなのですね!詳しく教えていただきありがとうございます!
Xcodeというのは耳にしたことはありますが、知識不足なので、
調べて検証のために導入してみます^^
ありがとうございます!とても助かります^^
追記、大変にありがとうございます。
しかしこれは・・・、本当にキャプチャしたそのままの画像でしょうか?
通常、キャプチャをした場合は、上のアドレスバーや、下のツールバーも映るはずですが。
その部分も含めて、検証が必要なので、どうかご確認お願いします。
そして、このバー付きUIならば、iPhone X系ですね。
しかし、もし、これがキャプチャの全てならば、お使いのブラウザが、iPhone Safariでない可能性があります。
質問本文に、iPhone Xや、iPhone Xsであること、使用してるブラウザも記載をお願いします。
おっしゃる通り、全画像ではありません。
どうやら、アドレスは下スクロールにより、消えていたようです。
LINEでアドレスを送って、そのアドレスを開いてもらっていました。
まさかと思い、アドレスをコピペして、
safariのブラウザで開くと確かに、safariとは異なるようでした。
そして、safariだと正常に動きました!!
その開いてもらっていたブラウザは下にスクロールする前には、
アドレスが表示されています。
あとは、時計と電池残量などがスクショにうつっていました。
すみませんが、アドレスについては、諸事情により控えています。
使用しているブラウザについては、
アプリ一覧をみさせてもらったのですが、
safari以外には、該当のブラウザアプリらしきものを発見できませんでした。
iphone XRとのことです。
ちなみに、上部は画像カットしましたが、下部はカットしていません。
(スクロールバーは表示されていませんでした)
下部はカットしてないのであれば、上部のアドレスバーの仕様上の高さ変動も原因の可能性があります。
iPhone XRか・・・。
しかし、ほぼほぼiPhone Xと同じ仕様なので、
仕様につき、回避不可の可能性が非常に高いですね。
仮にsafari以外であっても、safariで正常に動いているのであれば、
対応する必要はないかと思います。
(他のブラウザだったとしても、そのブラウザの仕様上回避不可になるかと思われる)
これ以上の正確な回答を得るには、キャプチャの表示をしているブラウザを完全に特定する必要があります。
なるほどですね!
safariにてツールバーでも変動していますし、
アドレスバーの使用上の高さ変動も原因の可能性が高いですね!
確かに、ブラウザの特定が先決ですね。
safariで正常に動作したので、対応が必要ないような気もしますが、
LINEで飛んだ場合は、そのブラウザになる可能性もあるので悩ましいところではありますね・・・
ブラウザについてですが、
どうやら、LINEアプリのブラウザ機能らしいですね。
LINEは普及していますので、悩ましいところです・・・。
回答の方でコメント返しますね。(ここの使用の仕方から逸脱してきました)

回答3件
あなたの回答
tips
プレビュー