2014-04-23 23 views
56

Sto cercando di ottenere divs di background-immagine fisse che funzionano su iOS per un progetto scolastico. Sto usandoCome replicare background-attachment fisso su iOS

background-attachment: fixed; 

Ma questo sta portando a ridimensionamento strano e senza effetti a scorrimento in safari mobile. Here is the site con cui sto lavorando; il metodo che sto attualmente usando per gli sfondi di immagine quote div funziona bene sui desktop, ma fallisce completamente su iOS.

In qualche modo, http://www.everyonedeservesgreatdesign.com ha funzionato. Sto avendo difficoltà a seguire il codice perché stanno usando un modello squarespace di qualche tipo, ma sembra che stiano mettendo le immagini in un div position:fixed che è in qualche modo ritagliato dal suo div genitore position:relative. Avevo l'impressione che non fosse possibile ritagliare i div di position:fixed con qualcosa di diverso dal viewport, quindi sono molto curioso di sapere cosa sta succedendo qui.

Qualche idea su come implementare questo metodo per gli sfondi di immagine fissa div nel mio sito?

+0

Ehi, questo non è correlato alla tua domanda, ma i link in basso interrompono il tuo layout nei dispositivi mobili. Prova a inserire un overflow-x nascosto nel corpo e il div di posta in modo che non scorra orizzontalmente. – fernandopasik

+0

Questo è contrassegnato come un duplicato ma non è stata identificata alcuna domanda duplicata e questa è la domanda con i più upvotes. SMH. –

risposta

78

In passato è stato chiesto, a quanto pare, costa molto ai browser mobili, quindi è stato disabilitato.

Controllare this comment by @PaulIrish:

fisso-sfondi hanno enorme costo ridipingere e decimano scorrimento prestazioni, che è, credo, perché è stato disattivato.

potete vedere soluzioni a questo in questo post:

Fixed background image with ios7

Fixed body background scrolls with the page on iOS7

+0

Sono curioso di conoscere la tecnica specifica utilizzata da http://www.everyonedeservesgreatdesign.com/, che sembra essere unica in quanto utilizza immagini con posizione: fissa invece di una soluzione alternativa basata su javascript. – QRohlf

+0

Non è solo css, guarda # parallax-div div l'image-container ha css in linea. Questo è gestito in https://static.squarespace.com/static/ta/515c7b5ae4b0875140c3d94a/2476/scripts/site.js – fernandopasik

+0

Ah, grazie. Mi stavo davvero chiedendo come sono riusciti a ottenere l'effetto senza js; sembra che la risposta sia che non l'hanno fatto. – QRohlf

2

Sembra a me come le immagini di sfondo non sono in realtà immagini di sfondo ... il sito è le immagini di sfondo e le virgolette in div di fratello con i figli del div contenente le immagini che sono state assegnate posizione: fissa; Le virgolette div hanno anche uno sfondo trasparente.

wrapper div{ 
    image wrapper div{ 
     div for individual image{ <--- Fixed position 
      image <--- relative position 
     } 
    } 
    quote wrapper div{ 
     div for individual quote{ 
      quote 
     } 
    } 
} 
Problemi correlati