DEV Community

Cover image for Emmet for HTML: A Beginner’s Guide to Writing Faster Markup
Debashis Das
Debashis Das

Posted on

Emmet for HTML: A Beginner’s Guide to Writing Faster Markup

When you start learning HTML, writing tags feels slow and repetitive.
You type <div>, then </div>, again and again.
This is where Emmet makes life easier.

Let’s understand Emmet step by step, in a very simple way.

1. What is Emmet? (In very simple terms)

Emmet is a shortcut system for writing HTML faster.

Instead of writing full HTML tags, you write short abbreviations, and Emmet automatically expands them into proper HTML.

Think of Emmet as:

“Short code → Full HTML”

2. Why Emmet is useful for HTML beginners

As a beginner:

  • HTML feels slow to type
  • Too many opening and closing tags
  • Easy to make small mistakes

Emmet helps you:

  • Write HTML faster
  • Avoid typing errors
  • Focus on structure, not typing

You still learn HTML properly—Emmet just saves time.


3. How Emmet works inside code editors

Emmet works inside code editors, not in the browser.

Most modern editors support Emmet:

  • VS Code (recommended)
  • Sublime Text
  • Atom

In VS Code, Emmet works by default.

You type an abbreviation → press Tab → HTML appears.


4. Basic Emmet syntax and abbreviations

Emmet uses symbols to describe HTML structure.

Some basics:

tag → creates an element

  • .→ class
  • #→ id
  • >→ child (nested)
  • *→ repeat elements

Don’t worry—examples will make this clear.


5. Creating HTML elements using Emmet

Emmet

p
Enter fullscreen mode Exit fullscreen mode

After pressing Tab:

<p></p>
Enter fullscreen mode Exit fullscreen mode

Another example:

h1
Enter fullscreen mode Exit fullscreen mode

Output:

<h1></h1>
Enter fullscreen mode Exit fullscreen mode

One word → full HTML tag.


6. Adding classes, IDs, and attributes

Class example

Emmet:


p.text

Enter fullscreen mode Exit fullscreen mode

Output:


<p class="text"></p>

Enter fullscreen mode Exit fullscreen mode

ID Example

Emmet:


div#container

Enter fullscreen mode Exit fullscreen mode

Output:


<div id="container"></div>

Enter fullscreen mode Exit fullscreen mode

Class + ID together

Emmet:


div.box#main

Enter fullscreen mode Exit fullscreen mode

Output:


<div class="box" id="main"></div>

Enter fullscreen mode Exit fullscreen mode

7. Creating nested elements

Nesting means elements inside elements.
Emmet:


div>p

Enter fullscreen mode Exit fullscreen mode

output:


<div>
  <p></p>
</div>

Enter fullscreen mode Exit fullscreen mode

Another example:
Emmet:


div>h1+p

Enter fullscreen mode Exit fullscreen mode

Output:


<div>
  <h1></h1>
  <p></p>
</div>

Enter fullscreen mode Exit fullscreen mode

>means inside.


8. Repeating elements using multiplication

You often need multiple similar elements.

Emmet:


li*3

Enter fullscreen mode Exit fullscreen mode

Output:


<li></li>
<li></li>
<li></li>

Enter fullscreen mode Exit fullscreen mode

With nesting:
Emmet:


ul>li*3

Enter fullscreen mode Exit fullscreen mode

Output:


<ul>
  <li></li>
  <li></li>
  <li></li>
</ul>

Enter fullscreen mode Exit fullscreen mode

This is very common in real projects.


9. Generating full HTML boilerplate with Emmet

Instead of writing full HTML structure manually…

Emmet:

!
Enter fullscreen mode Exit fullscreen mode

(orhtml:5)
Output:


<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
</head>
<body>

</body>
</html>

Enter fullscreen mode Exit fullscreen mode

One shortcut → complete HTML page


Final Thoughts

  • Emmet is a shortcut language for HTML
  • It saves time but doesn’t replace learning HTML
  • You can use it daily, even as a beginner
  • Completely optional, but very powerful

Best way to learn Emmet: Try each example yourself in VS Code and once you get used to it, writing HTML without Emmet will feel… slow.

Top comments (0)