DEV Community

_Khojiakbar_
_Khojiakbar_

Posted on

Dynamic DOM Element Creation : <template>

In HTML

  1. Create parent div
    <!---------------  Parent div -------------->
    <div id="parent" class="card m-5 mx-auto" >
        <h1>Hello Template</h1>
    </div>
Enter fullscreen mode Exit fullscreen mode
  1. Create template:
<!----------------- Template tag ------------>
    <template id="template">
        <div class="card d-flex">
            <img id="temp-img" src="https://picsum.photos/id/293/100/100" alt="smth">
            <h1>Template title</h1>
            <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Animi, architecto dolor eius fugiat incidunt ipsa iure iusto officiis recusandae rerum!</p>
        </div>
    </template>
Enter fullscreen mode Exit fullscreen mode

In CSS:

#parent{
    width: 43%;
}
.card {
    width:500px;
    padding: 20px;
}
.card h1{
    font-size: 50px;
}
#temp-img {
    margin: 0 auto;
    width: 400px;
    height: 300px;
}
Enter fullscreen mode Exit fullscreen mode

In Javascript:

  • Call from HTML
const parent = document.querySelector('#parent');
const template = document.querySelector('#template');
Enter fullscreen mode Exit fullscreen mode
  • Clone the template
clonedTemplate = template.content.cloneNode(true);
Enter fullscreen mode Exit fullscreen mode
  • Append the new cloned template to the parent
parent.prepend(clonedTemplate);
Enter fullscreen mode Exit fullscreen mode
πŸ‘‹ While you are here

Reinvent your career. Join DEV.

It takes one minute and is worth it for your career.

Get started

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

πŸ‘‹ Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay