I tag <details> e <summary> vengono usati nel codice HTML per inserire del testo che può essere visualizzato o nascosto dall’utente semplicemente cliccando o toccando il titolo della descrizione.
<details> <summary>Che cos'è l'HTML</summary> <p>L'HTML è il linguaggio usato per creare i siti web e vengono letti dai browser per visualizzare la pagina a un utente</p> </details>
Come si può notare, summary è un sotto elemento di details e indica il titolo da mostrare all’utente e che deve essere cliccato per visualizzare o nascondere le informazioni aggiuntive. Nel browser viene mostrato come sotto:
Che cos’è l’HTML
L’HTML è il linguaggio usato per creare i siti web e vengono letti dai browser per visualizzare la pagina a un utente
– Vedi anche: Come si scrive una pagina HTML
Il tag <details> ha un solo attributo principale, open, che serve a fare in modo che le informazioni contenute in questo elemento vengano visualizzate all’apertura della pagina web.
<details open> <summary>Che cos'è l'HTML</summary> <p>L'HTML è il linguaggio usato per creare i siti web e vengono letti dai browser per visualizzare la pagina a un utente</p> </details>
E’ possibile personalizzare gli elementi details e summary applicando le regole CSS ai seguenti selettori:
- details > summary modifica lo stile del pulsante con il testo da cliccare. E’ possibile aggiungergli il bordo e un colore di sfondo;
- details > p stabilisce come deve essere visto il testo aggiunto quando l’utente clicca sul titolo;
<!DOCTYPE html>
<html>
<head>
<style>
details > summary {
padding: 4px;
width: 200px;
background-color: #8abef1;
border: solid 1px;
box-shadow: 1px 1px 2px #bbbbbb;
cursor: pointer;
}
details > p {
background-color: #8abef1;
padding: 4px;
margin: 0; <!--è importante-->
box-shadow: 1px 1px 2px #bbbbbb;
}
</style>
</head>
<body>
<h1>Il linguaggio HTML</h1>
<details>
<summary>Che cos'è l'HTML?</summary>
<p>L'HTML è il linguaggio usato per creare i siti web e vengono letti dai browser per visualizzare la pagina a un utente.</p>
</details>
</body>
</html>