2014-12-05 27 views
5

Sto costruendo una pagina che deve avere alcuni elementi che restano nella parte superiore della pagina quando altrimenti verrebbero scostati dallo schermo. Sono riuscito a farlo usando position:absolute. Tutto funzionava perfettamente, ma era necessario scorrere lo slancio. Ho aggiunto -webkit-overflow-scrolling: touch al css dell'area scorrevole. Questo ha rotto tutto. I miei elementi appiccicosi con position:absolute ora stanno semplicemente scorrendo con il resto del contenuto.-webkit-overflow-scrolling interrompe il posizionamento assoluto

mia domanda è questa:

Perché -webkit-overflow-scrolling: touch influenzano il posizionamento assoluto, e c'è un modo per aggirare questo?

AGGIORNAMENTO: ho aggiunto un avviso ogni volta che un elemento figlio diventa "fisso" o "non risolto". Gli avvisi continuano a sparare, quindi lo stile è ancora applicato, semplicemente non funziona. Ciò significa che non è un problema tenere traccia della posizione di scorrimento, ma piuttosto un problema con lo stile.

UPDATE: Ho provato ad utilizzare position: fixed invece di position: absolute e -webkit-overflow-scrolling rotto che anche

UPDATE: Dopo un sacco di scavo, ho trovato i riferimenti a questo problema here e here. Tuttavia, l'unica soluzione proposta in entrambi i casi è la ristrutturazione del DOM in modo che gli elementi collosi non si trovino nell'area scorrevole. Questa è una cosa difficile da fare nel mio caso, e preferirei non doverlo fare. Sono progredite le cose da quando iOS5 o è ancora l'unica opzione?

+1

Questo sembra essere ancora un problema in iOS 10 – joeyhoer

risposta

0

Sull'ultima domanda - sì il problema è presente in ios5. L'estrazione dell'elemento di posizionamento assoluto al di fuori dell'area scorrevole ha funzionato bene per me.

+2

grazie @ user3222482 ma come ho detto sopra, questa non è un'opzione per me, quindi non risolve il mio problema :( – kat