2016-02-24 36 views
7

Sto avendo alcuni problemi pazzi con iPhone 6+ Safari (iOS 9 principalmente, anche se iOS 8 ha anche alcuni piccoli inconvenienti) con modalità schede attive. Tutti gli elementi fissi sono posizionati correttamente in verticale e orizzontale, ma non sono visibili e/o spostati in modalità orizzontale con una o più schede aperte. Anche se non sono visibili, sono ancora cliccabili e si sovrappongono al resto del contenuto. Il dispositivo rotante risolve in parte il problema, oltre a passare da una scheda all'altra. Anche l'impostazione della posizione dell'elemento da fisso a statico e viceversa.iPhone 6 Più strani bug in modalità orizzontale con schede ed elementi fissi

HTML:

<html> 
    <head></head> 
    <body> 
    <div id="application"> 
     <div class="outer-header"> 
     <div class="inner-header"> 
      <a id="link-test" href="#">Click me!</a> 
     </div> 
     </div> 
    </div> 
    </body> 
</html> 

CSS:

body { 
    background: linen; 
} 

.outer-header { 
    position: fixed; 
    width: 100%; 
    height: 30px; 
    top: 0; 
    left: 0; 
    background: steelblue; 
} 

.inner-header { 
    background: white; 
} 

L'applicazione è abbastanza grande, ma sono riuscito a riprodurre il problema su codepen: iPhone 6 Plus position:fixed bug

aprirlo direttamente nel paesaggio con le schede su.

risposta

0

Se si aggiunge uno stile all'elemento dell'applicazione funzionerà. Qualcosa di simile a questo:

document.querySelector('#link-test') 
 
    .addEventListener('click', 
 
    function(e) { 
 
     e.preventDefault(); 
 
     alert('You did it!'); 
 
    });
body { 
 
    background: linen; 
 
} 
 

 
#application { 
 
    position: relative; 
 
} 
 

 
.outer-header { 
 
    position: fixed; 
 
    width: 100%; 
 
    height: 30px; 
 
    top: 0; 
 
    left: 0; 
 
    background: steelblue; 
 
} 
 

 
.inner-header { 
 
    background: white; 
 
}
<html> 
 
    <head></head> 
 
    <body> 
 
    <div id="application"> 
 
     <div class="outer-header"> 
 
     <div class="inner-header"> 
 
      <a id="link-test" href="#">Click me!</a> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    </body> 
 
</html>