Le positionnement fixe ne fonctionne pas sur iOS comme sur les ordinateurs.
Imaginez que vous avez une feuille de papier (la page web) sous une loupe (la fenêtre de visualisation), si vous déplacez la loupe et votre œil, vous voyez une partie différente de la page. C'est ainsi que fonctionne iOS.
Maintenant, il y a une feuille de plastique transparent avec un mot dessus, cette feuille de plastique reste immobile quoi qu'il arrive (la position : éléments fixes). Ainsi, lorsque vous déplacez la loupe, l'élément fixe apparaît de se déplacer.
Au lieu de déplacer la loupe, vous pouvez aussi déplacer le papier (la page web), tout en gardant la feuille de plastique et la loupe immobiles. Dans ce cas, le mot sur la feuille de plastique semblera rester fixe, et le reste du contenu semblera se déplacer (parce qu'il l'est réellement). Il s'agit d'un navigateur de bureau traditionnel.
Ainsi, dans iOS, la fenêtre d'affichage se déplace, tandis que dans un navigateur traditionnel, la page web se déplace. Dans les deux cas, les éléments fixes restent immobiles en réalité, bien que sur iOS les éléments fixes semblent se déplacer.
La façon de contourner ce problème est de suivre les derniers paragraphes de l'article. cet article
(en fait, désactiver complètement le défilement, placer le contenu dans une division séparée pouvant défiler (voir la boîte bleue en haut de l'article lié), et positionner l'élément fixe de manière absolue).
"position:fixed" fonctionne désormais comme prévu dans iOS5.
2 votes
Il semble que jQuery Mobile 1.1 ait résolu ce problème : jquerymobile.com/blog/2012/04/13/annoncer-jquery-mobile-1-1-0
0 votes
Duplicata possible de Positionnement fixe dans Mobile Safari
0 votes
Possible duplication de plusieurs questions de l'OS. Voir gist.github.com/avesus/ pour les détails.