Impariamo ad usare
l'attributo popover

Visita anche Risorse per i webmaster
archivio di risorse per la creazione di pagine web
Sommario:
Questa pagina è un completamento della guida Come creare un sito da zero

L'attributo popover applicato ad un elemento lo rende visibile solo se richiamato da un pulsante (button o input) che possiede l'attributo popovertarget il cui valore corrisponde all'id dell'elemento popover.
L'elemento popover, quando richiamato, si posiziona al centro della pagina sopra al contenuto, conservando, se presenti, le regole di stile applicate.
Cliccando nuovamente sul pulsante popovertarget, o su un punto qualsiasi della pagine, l'elemento popover ritorna nascosto alla vista.
L'attributo popover è un attributo globale, vale a dire che può essere applicato a qualunque tag html.
NOTA BENE: L'attributo popover non è ancora standard, quindi il validatore W3C lo segnala, al momento, come errore perchè non riconosciuto.

Popover codice base

Esempio base funzionante:

Buon lavoro!


Codice:
<button popovertarget="my-popover">Open/Close Popover</button>
<div popover id="my-popover">Buon lavoro!</div>

Popover personalizzato

Applicando opportune regole di stile all'id dell'elemento popover è possibile personalizzare l'aspetto della finestra popup. Per esempio, è possibile rimuovere o modificare il border presente di default, cambiare la posizione, definire le dimensioni della finestra e i colori.
Esempio personalizzato

Popover show/hide

Il popover di base si chiude cliccando sul medesimo pulsante di apertura, ma è possibile aggiungere un pulsante di chiusura vicino a quello di apertura, o all'interno del popup stesso.

Esempio show/hide 1
Esempio show/hide 2
Esempio show/hide 3

Popover multiplo

Per più popover nella medesima pagina dovete numerarli in sequenza in questo modo:
<button popovertarget="mypopover-1" popovertargetaction="show">Show/hide popover 1</button>
<button popovertarget="mypopover-2" popovertargetaction="show">Show/hide popover 2</button>

<div id="mypopover-1" popover>Popover content #1</div>
<div id="mypopover-2" popover>Popover content #2</div>


Esempio popover multiplo

Popover posizionato

Come detto, il popover viene posizionato, di default, al centro della pagina se non diversamente indicato. Possibile porlo in una posizione diversa utilizzando opportune regole di stile.

Esempio popover posizionato

Sempre con le opportune regole di stile, possiamo posizionare il popover sotto al suo pulsante di attivazione e utilizzarlo come menù.

Esempio popover menù

Popover animato

Possibile aggiungere un'animazione all'apertura del popover.

Esempio popover con animazione

Codice per effetto fade:
<style>
#mypopover {
  -webkit-animation: fadeIn 1s ease-in;
          animation: fadeIn 1s ease-in;
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
</style>

<button popovertarget="mypopover">Show popover</button>
<div id="mypopover" popover>Io sono un popover</div>

Popover con timeout

Con poche righe di javascript potete creare un popover che si apre al caricamento della pagina e scompare in automatico dopo un tempo stabilito.
Codice di esempio:
<div id="mypopover" popover="manual">Popover content</div>

<script>
// Show popover
document.getElementById('mypopover').showPopover();
// Hide popover
document.getElementById('mypopover').hidePopover();
var popover = document.getElementById('mypopover');
popover.showPopover();
setTimeout(() => {
popover.hidePopover();
}, 6000);
</script>


Leggi anche Come creare le finestre modali (pop-in)

Nella sezione "Strumenti per i webmaster" puoi trovare moltissime soluzioni e risorse da scaricare.


Continua con
Leggi tutto