Tag HTML <modello>
Esempio
Usa <template> per mantenere alcuni contenuti che verranno nascosti al caricamento della pagina. Usa JavaScript per visualizzarlo:
<button onclick="showContent()">Show hidden content</button>
<template>
<h2>Flower</h2>
<img src="img_white_flower.jpg" width="214"
height="204">
</template>
<script>
function showContent() {
var temp =
document.getElementsByTagName("template")[0];
var clon =
temp.content.cloneNode(true);
document.body.appendChild(clon);
}
</script>
Altri esempi "Provalo da solo" di seguito.
Definizione e utilizzo
Il <template>
tag viene utilizzato come contenitore per mantenere alcuni contenuti HTML nascosti all'utente durante il caricamento della pagina.
Il contenuto all'interno <template>
può essere visualizzato in seguito con un JavaScript.
Puoi utilizzare il <template>
tag se hai del codice HTML che desideri utilizzare più e più volte, ma non finché non lo chiedi. Per farlo senza il <template>
tag, devi creare il codice HTML con JavaScript per impedire al browser di eseguire il rendering del codice.
Supporto browser
Element | |||||
---|---|---|---|---|---|
<template> | 26.0 | 13.0 | 22.0 | 8.0 | 15.0 |
Attributi globali
Il <template>
tag supporta gli attributi globali in HTML .
Altri esempi
Esempio
Riempi la pagina web con un nuovo elemento div per ogni elemento in un array. Il codice HTML di ogni elemento div è all'interno dell'elemento template:
<template>
<div class="myClass">I like: </div>
</template>
<script>
var myArr = ["Audi", "BMW", "Ford", "Honda", "Jaguar",
"Nissan"];
function showContent() {
var temp, item, a,
i;
temp =
document.getElementsByTagName("template")[0];
item =
temp.content.querySelector("div");
for (i = 0; i < myArr.length; i++) {
a = document.importNode(item,
true);
a.textContent += myArr[i];
document.body.appendChild(a);
}
}
</script>
Esempio
Verifica il supporto del browser per <modello>:
<script>
if (document.createElement("template").content) {
document.write("Your browser supports template!");
} else {
document.write("Your browser does not supports template!");
}
</script>