WebSite X5Help Center

 
Federico S.
Federico S.
User

Hamburgher menu con codice non funziona con safari  it

Autore: Federico S.
Visite 731, Followers 2, Condiviso 0  

Ho cosrtuito un hamburger menu che si apre a schermo intero ed inserito nel header per smartphone.

Il problema è che con safari non funziona. Praticamente invece di aprirsi a schermo intero Si espande all interno del contenitore dove ho scritto il codice.

Qui la pagina :https://www.mangioacasa.bz.it/texmex/index.php (visibile solo con smartphone)

Con android funziona.

P.s non posso usare il menu di website perche ho la necessità di prelevare le voci in elenco da database

Questo è il codice di esempio che ho usato, che poi ho modicato per inseritlo in php.

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
body {
font-family: 'Lato', sans-serif;
}

.overlay {
height: 0%;
width: 100%;
position: fixed;
z-index: 1;
top: 0;
left: 0;
background-color: rgb(0,0,0);
background-color: rgba(0,0,0, 0.9);
overflow-y: hidden;
transition: 0.5s;
}

.overlay-content {
position: relative;
top: 25%;
width: 100%;
text-align: center;
margin-top: 30px;
}

.overlay a {
padding: 8px;
text-decoration: none;
font-size: 36px;
color: #818181;
display: block;
transition: 0.3s;
}

.overlay a:hover, .overlay a:focus {
color: #f1f1f1;
}

.overlay .closebtn {
position: absolute;
top: 20px;
right: 45px;
font-size: 60px;
}

@media screen and (max-height: 450px) {
.overlay {overflow-y: auto;}
.overlay a {font-size: 20px}
.overlay .closebtn {
font-size: 40px;
top: 15px;
right: 35px;
}
}
</style>
</head>
<body>

<div id="myNav" class="overlay">
<a href="javascript:void(0)" class="closebtn" onclick="closeNav()">&times;</a>
<div class="overlay-content">
<a href="#">About</a>
<a href="#">Services</a>
<a href="#">Clients</a>
<a href="#">Contact</a>
</div>
</div>

<h2>Fullscreen Overlay Nav Example</h2>
<p>Click on the element below to open the fullscreen overlay navigation menu.</p>
<p>In this example, the navigation menu will slide downwards from the top:</p>
<span style="font-size:30px;cursor:pointer" onclick="openNav()">&#9776; open</span>

<script>
function openNav() {
document.getElementById("myNav").style.height = "100%";
}

function closeNav() {
document.getElementById("myNav").style.height = "0%";
}
</script>

</body>
</html>

Postato il
16 RISPOSTE - 2 UTILI
Mirko Boschetti
Mirko Boschetti
Moderator

non puoi inserire quel codice cosi...

devi togliere:

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">

e tutto quello che hai scritto sopra... surprised

per esempio questo non ci deve essere:

Leggi di più
Postato il da Mirko Boschetti
Federico S.
Federico S.
User
Autore

Infatti non l ho inserito cosi, questo è solo il codice di esempio che ho usato.

la mia domanda è perche funziona perfettamente con android invece no con safari?

in particolare non funziona se lo metto nel header, non si espande a tutto schermo ma rimane dentro le dimensioni dell elemento codice.

Leggi di più
Postato il da Federico S.
Mirko Boschetti
Mirko Boschetti
Moderator

Ok, avevi scritto sopra:

Questo è il codice di esempio che ho usato,

poi hai messo un link dove però io non vedo quel menu... cool

Leggi di più
Postato il da Mirko Boschetti
Federico S.
Federico S.
User
Autore

è impostato per vedersi a risoluzioni sotto a 480 di x percui con un cellura.

se lo provi con android funziona, invece con iphone no!

Leggi di più
Postato il da Federico S.
Fabio C.
Fabio C.
User

Scusa @federico scalzo posso chiederti perchè non lo fai con il progemma ? O ofrse non ho capito io il risultato che vuoi ottenere !!! Se vuoi un hamburger menù che si apra a tutto schermo basta che, nei vari livelli, al passo 3--->modello imposti la larghezza dell'hamburger uguale alla largheza del livello e ti si vede a schermo intero.

Leggi di più
Postato il da Fabio C.
Fabio C.
Fabio C.
User

Passo2--->Modello--->Contenuto Modello

Leggi di più
Postato il da Fabio C.
Federico S.
Federico S.
User
Autore

Perché ne devo fare una trentina di questi menù. E ognuno è diverso con numerose voci. Percui vorrei prendere i dati da un database.

Cmq anche lo schermo pieno non funziona benissimo con il programma perché non si può mettere il 100% ma un numero fisso. Percui per esempio se il livello è 320px ed uno usa un dispositivo a 450px non sarà a pieno schermo. 

Leggi di più
Postato il da Federico S.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... ci sono diversi errori nel codice sorgente EXTRA della pagina che potrebbero comprometterne il funzionamento, relativi a impropri tag img, table, font, b, doppio /html, eccetera, da rivedere e riparare  con attenzione...
.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Federico S.
Federico S.
User
Autore

Immagino che ci siano questi errori. Però il problema non è quello. Ho provato anche a fare una pagina vuota con solo il codice di sopra e il problema rimane. 

Leggi di più
Postato il da Federico S.
Federico S.
Federico S.
User
Autore

Poi se sposto in codice dall header al body allora funziona. Solo che li nasce un'altro problema. Il menù va sotto a tutto e con z-index non riesco a metterlo sopra a tutto. Se nessuno riesce ad avere una soluzione per il primo problema sarebbe utile una soluzione per il secondo. 

Leggi di più
Postato il da Federico S.
Claudio D.
Claudio D.
Moderator
federico scalzo
Poi se sposto in codice dall header al body allora funziona. Solo che li nasce un'altro problema. Il menù va sotto a tutto e con z-index non riesco a metterlo sopra a tutto. Se nessuno riesce ad avere una soluzione per il primo problema sarebbe utile una soluzione per il secondo. 

?

...scusa ma il codice del pulsante non lo hai messo in Oggetto Codice HTML ?

Leggi di più
Postato il da Claudio D.
Federico S.
Federico S.
User
Autore

Certo, altrimenti dove potevo metterlo? 

Leggi di più
Postato il da Federico S.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator
federico scalzo
Poi se sposto in codice dall header al body allora funziona. Solo che li nasce un'altro problema. Il menù va sotto a tutto e con z-index non riesco a metterlo sopra a tutto. Se nessuno riesce ad avere una soluzione per il primo problema sarebbe utile una soluzione per il secondo. 

... secondo me, il codice originale <div *** *** *** </div>  + <script>***</script> ... così come sono, dovresti incollarli nella:

>> sezione Esperto | Codice personalizzato | 6^ opzione - Prima della chiusura del tag BODY

... invece il contenuto del tag <style> puoi lasciarlo in Oggetto Codice HTML, come hai fatto, magari eliminando il body, oppure incollarlo per intero (-body) nella:

>> sezione Esperto | Codice personalizzato | 3^ opzione - Prima della chiusura del tag HEAD

.

Leggi di più
Postato il da  ‪ KolAsim ‪ ‪
Mirko Boschetti
Mirko Boschetti
Moderator

come detto già da me e confermato da KolAsim, io eliminerei tutti gli errori prima, visto che male non fà, e poi potrai provare a sistemare il resto...poi fai come credi... wink

Leggi di più
Postato il da Mirko Boschetti
Federico S.
Federico S.
User
Autore

Si ma correggere gli errori non risolvono la questione che ho proposto. Ho già detto che anche se usi solo il codice postato il alto fatto da un sito specializzato il problema rimane. 

Leggi di più
Postato il da Federico S.
Federico S.
Federico S.
User
Autore
 ‪ KolAsim ‪ ‪
federico scalzo Poi se sposto in codice dall header al body allora funziona. Solo che li nasce un'altro problema. Il menù va sotto a tutto e con z-index non riesco a metterlo sopra a tutto. Se nessuno riesce ad avere una soluzione per il primo problema sarebbe utile una soluzione per il secondo.  ... secondo me, il codice originale <div *** *** *** </div>  + <script>***</script> ... così come sono, dovresti incollarli nella: >> sezione Esperto | Codice personalizzato | 6^ opzione - Prima della chiusura del tag BODY ... invece il contenuto del tag <style> puoi lasciarlo in Oggetto Codice HTML, come hai fatto, magari eliminando il body, oppure incollarlo per intero (-body) nella: >> sezione Esperto | Codice personalizzato | 3^ opzione - Prima della chiusura del tag HEAD .

Trovata soluzione prendendo spunto suggerimento KolAsim ‪ :

codice <div *** *** *** </div> in proprità >> sezione Esperto Prima della chiusura del tag BODY

Css in proprità >> sezione Esperto Prima della chiusura del tag HEAD

Oggetto html con pulsante e codice <script>***</script> dentro modello >>contenuto modello >>header.

Grazie

Leggi di più
Postato il da Federico S.