###起きている事象・解決したい問題
・CSSのposition:fixedしている要素内にフォームを設置したいが、おそらくIOSのバグでinputにフォーカスするとページトップへスクロールしてしまう
・フォーカスが入ると、強制的にfixedがabsoluteになってしまうことが原因らしい
参考:iOS8でposition:fixedなheaderに付けたinputにフォーカスを当てると一番上までスクロールしてしまう
上記のようなバグで、フォームを入力することができず困っています。
何か思い当たることがあれば教えていただけますと幸いです。よろしくお願いします。
###発生条件
IOS9.1、9.2(safari)で確認済み
###ソースコード
css
1* { 2 margin:0; 3 padding:0; 4} 5header{ 6 width:100%; 7 height:30px; 8 position:fixed; 9 top:0; 10 left:0; 11 background-color:#F00; 12 text-align:center; 13} 14main{ 15 padding-top:60px; 16} 17footer{ 18 background-color:#000; 19 color:#FFF; 20 text-align:center; 21} 22
html
1<header> 2<input type="text"> 3</header> 4 5<main> 6<ol> 7<li class="row01">行</li> 8<li class="row02">行</li> 9<li class="row03">行</li> 10<li class="row04">行</li> 11<li class="row05">行</li> 12<li class="row06">行</li> 13<li class="row07">行</li> 14<li class="row08">行</li> 15<li class="row09">行</li> 16<li class="row10">行</li> 17<li class="row11">行</li> 18<li class="row12">行</li> 19<li class="row13">行</li> 20<li class="row14">行</li> 21<li class="row15">行</li> 22<li class="row16">行</li> 23<li class="row17">行</li> 24<li class="row18">行</li> 25<li class="row19">行</li> 26<li class="row20">行</li> 27<li class="row21">行</li> 28<li class="row22">行</li> 29<li class="row23">行</li> 30<li class="row24">行</li> 31<li class="row25">行</li> 32<li class="row26">行</li> 33<li class="row27">行</li> 34<li class="row28">行</li> 35<li class="row29">行</li> 36<li class="row30">行</li> 37<li class="row31">行</li> 38<li class="row32">行</li> 39<li class="row33">行</li> 40<li class="row34">行</li> 41<li class="row35">行</li> 42<li class="row36">行</li> 43<li class="row37">行</li> 44<li class="row38">行</li> 45<li class="row39">行</li> 46<li class="row40">行</li> 47<li class="row41">行</li> 48<li class="row42">行</li> 49<li class="row43">行</li> 50<li class="row44">行</li> 51<li class="row45">行</li> 52<li class="row46">行</li> 53<li class="row47">行</li> 54<li class="row48">行</li> 55<li class="row49">行</li> 56<li class="row50">行</li> 57</ol> 58</main> 59 60<footer> 61footer 62</footer>
###実践してみたこと
①フォーカスが入った時にJavaScriptで強制的にheaderにposition:fixedをつける(インラインで)
⇒ソースを見るとfixedはつくが、挙動はfixedされていなかった
②top:0ではなくbottom:0にしてみる
⇒同じ現象が起こった
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。