HTML: HyperText Markup Language - MDN Web Docs

  • Skip to main content
  • Skip to search
HTML: HyperText Markup Language

HTML (HyperText Markup Language) is the most basic building block of the Web. It defines the meaning and structure of web content. Other technologies besides HTML are generally used to describe a web page's appearance/presentation (CSS) or functionality/behavior (JavaScript).

"Hypertext" refers to links that connect web pages to one another, either within a single website or between websites. Links are a fundamental aspect of the Web. By uploading content to the Internet and linking it to pages created by other people, you become an active participant in the World Wide Web.

HTML uses "markup" to annotate text, images, and other content for display in a Web browser. HTML markup includes special "elements" such as <head>, <title>, <body>, <header>, <footer>, <article>, <section>, <p>, <div>, <span>, <img>, <aside>, <audio>, <canvas>, <datalist>, <details>, <embed>, <nav>, <search>, <output>, <progress>, <video>, <ul>, <ol>, <li> and many others.

An HTML element is set off from other text in a document by "tags", which consist of the element name surrounded by < and >. The name of an element inside a tag is case-insensitive. That is, it can be written in uppercase, lowercase, or a mixture. For example, the <title> tag can be written as <Title>, <TITLE>, or in any other way. However, the convention and recommended practice is to write tags in lowercase.

The articles below can help you learn more about HTML.

In this article

  • Beginner's tutorials
  • Guides
  • How to
  • Reference
  • Related topics

Beginner's tutorials

Our learn web development core modules contain modern, up-to-date tutorials covering HTML fundamentals.

Your first website: Creating the content

This article provides a brief tour of what HTML is and how to use it, aimed at people who are completely new to web development.

Structuring content with HTML

This module covers the basics of the HTML language, before looking at key areas such as document structure, links, lists, images, forms, and more.

HTML forms

Forms are a very important part of the Web — these provide much of the functionality you need for interacting with websites, e.g., registering and logging in, sending feedback, buying products, and more. This module gets you started with creating the client-side/front-end parts of forms.

Guides

The HTML guides help you build with HTML on the web. They cover topics such as forms, CORS, content preloading, and responsive images.

HTML cheatsheet for syntax and common tasks

Quick reference for common HTML syntax and tasks.

Using HTML comments <!-- … -->

HTML comments are used to add explanatory notes to the markup or to prevent the browser from interpreting specific parts of the document.

Using HTML form validation and the Constraint Validation API

HTML5 introduced constraint validation to ease form validation on the client side. Basic constraints can be checked without JavaScript by setting attributes on form elements.

Content categories

HTML is comprised of several kinds of content, each of which is allowed to be used in certain contexts and is disallowed in others. Similarly, each context has a set of other content categories it can contain and elements that can or can't be used in them. This is a guide to these categories.

Using date and time formats in HTML

Certain HTML elements use date and/or time values. This guide describes the formats of the strings that specify these values.

Using microdata in HTML

Microdata is used to nest metadata within existing content on web pages. Search engines and web crawlers can extract and process microdata to provide a richer browsing experience.

Using microformats in HTML

Microformats are standards used to embed semantics and structured data in HTML for use by social web applications, search engines, aggregators, and other tools.

Understanding quirks and standards modes

Historical information on quirks mode and standards mode.

Using responsive images in HTML

Learn about responsive images that work well on devices with widely differing screen sizes, resolutions, and other features, improving performance across different devices.

Media types and formats on the web

The <audio> and <video> elements allow you to play audio and video media natively within your content without the need for external software support.

How to

Define terms with HTML

HTML provides several ways to convey description semantics, whether inline or as structured glossaries. This article shows how to properly mark up keywords when defining them.

Use data attributes

HTML5 is designed with extensibility in mind for data that should be associated with a particular element but need not have any defined meaning. data-* attributes allow us to store extra information on standard, semantic HTML elements.

Use cross-origin images in a canvas

Some HTML elements that provide support for CORS, such as <img> or <video>, have a crossorigin attribute (crossOrigin property), which lets you configure the CORS requests for the element's fetched data.

Add a hitmap on top of an image

Image maps allow hyperlinks to be associated with different parts of an image. This article shows how to create and implement them.

Author fast-loading HTML pages

These tips are based on common knowledge and experimentation. An optimized web page not only provides for a more responsive site for your visitors but also reduces the load on your web servers and internet connection.

Add JavaScript to your web page

This article explains how to add JavaScript code to an HTML file.

Reference

HTML consists of elements, each of which may be modified by some number of attributes. HTML documents are connected to each other with links. Browse the complete HTML reference documentation.

HTML elements

Reference for all HTML elements.

HTML attributes

Reference for all HTML attributes. Attributes are additional values that configure elements or adjust their behavior in various ways.

Global attributes

Reference for global attributes that may be specified on all HTML elements, even those not specified in the standard. This means that any non-standard elements must still permit these attributes, even though those elements make the document HTML5-noncompliant.

Attributes by element

Input types

Used to create interactive controls for web-based forms.

Script types

Indicates the type of script represented by the element.

meta name

Provides metadata in name-value pairs for the whole page.

Attribute values

rel keywords

Defines the relationship between a linked resource and the current document.

Applying color to HTML elements using CSS

This article covers most of the ways you use CSS to add color to HTML content, listing what parts of HTML documents can be colored and what CSS properties to use when doing so.

Help improve MDN

Was this page helpful to you? Yes No Learn how to contribute

This page was last modified on ⁨Dec 22, 2025⁩ by MDN contributors.

View this page on GitHub • Report a problem with this content Filter sidebar
  1. HTML
  2. Guides
    1. Cheatsheet
    2. Comments
    3. Constraint validation
    4. Content categories
    5. Date and time formats
    6. Microdata
    7. Microformats
    8. Quirks and standards modes
    9. Responsive images
  3. How to
  4. Define terms with HTML
  5. Use data attributes
  6. Use cross-origin images
  7. Add a hitmap on top of an image
  8. Author fast-loading HTML pages
  9. Add JavaScript
  10. Reference
  11. Elements
    1. <a>
    2. <abbr>
    3. <acronym> Deprecated
    4. <address>
    5. <area>
    6. <article>
    7. <aside>
    8. <audio>
    9. <b>
    10. <base>
    11. <bdi>
    12. <bdo>
    13. <big> Deprecated
    14. <blockquote>
    15. <body>
    16. <br>
    17. <button>
    18. <canvas>
    19. <caption>
    20. <center> Deprecated
    21. <cite>
    22. <code>
    23. <col>
    24. <colgroup>
    25. <data>
    26. <datalist>
    27. <dd>
    28. <del>
    29. <details>
    30. <dfn>
    31. <dialog>
    32. <dir> Deprecated
    33. <div>
    34. <dl>
    35. <dt>
    36. <em>
    37. <embed>
    38. <fencedframe> Experimental
    39. <fieldset>
    40. <figcaption>
    41. <figure>
    42. <font> Deprecated
    43. <footer>
    44. <form>
    45. <frame> Deprecated
    46. <frameset> Deprecated
    47. <h1>
    48. <head>
    49. <header>
    50. <hgroup>
    51. <hr>
    52. <html>
    53. <i>
    54. <iframe>
    55. <img>
    56. <input>
    57. <ins>
    58. <kbd>
    59. <label>
    60. <legend>
    61. <li>
    62. <link>
    63. <main>
    64. <map>
    65. <mark>
    66. <marquee> Deprecated
    67. <menu>
    68. <meta>
    69. <meter>
    70. <nav>
    71. <nobr> Deprecated
    72. <noembed> Deprecated
    73. <noframes> Deprecated
    74. <noscript>
    75. <object>
    76. <ol>
    77. <optgroup>
    78. <option>
    79. <output>
    80. <p>
    81. <param> Deprecated
    82. <picture>
    83. <plaintext> Deprecated
    84. <pre>
    85. <progress>
    86. <q>
    87. <rb> Deprecated
    88. <rp>
    89. <rt>
    90. <rtc> Deprecated
    91. <ruby>
    92. <s>
    93. <samp>
    94. <script>
    95. <search>
    96. <section>
    97. <select>
    98. <selectedcontent> Experimental
    99. <slot>
    100. <small>
    101. <source>
    102. <span>
    103. <strike> Deprecated
    104. <strong>
    105. <style>
    106. <sub>
    107. <summary>
    108. <sup>
    109. <table>
    110. <tbody>
    111. <td>
    112. <template>
    113. <textarea>
    114. <tfoot>
    115. <th>
    116. <thead>
    117. <time>
    118. <title>
    119. <tr>
    120. <track>
    121. <tt> Deprecated
    122. <u>
    123. <ul>
    124. <var>
    125. <video>
    126. <wbr>
    127. <xmp> Deprecated
  12. Attributes
    1. accept
    2. autocomplete
    3. capture
    4. content
    5. crossorigin
    6. dirname
    7. disabled
    8. elementtiming
    9. fetchpriority
    10. for
    11. form
    12. max
    13. maxlength
    14. min
    15. minlength
    16. multiple
    17. pattern
    18. placeholder
    19. readonly
    20. rel
    21. required
    22. size
    23. step
  13. Global attributes
    1. accesskey
    2. anchor Experimental Non-standard
    3. autocapitalize
    4. autocorrect
    5. autofocus
    6. class
    7. contenteditable
    8. data-*
    9. dir
    10. draggable
    11. enterkeyhint
    12. exportparts
    13. hidden
    14. id
    15. inert
    16. inputmode
    17. is
    18. itemid
    19. itemprop
    20. itemref
    21. itemscope
    22. itemtype
    23. lang
    24. nonce
    25. part
    26. popover
    27. slot
    28. spellcheck
    29. style
    30. tabindex
    31. title
    32. translate
    33. virtualkeyboardpolicy Experimental
    34. writingsuggestions
  14. Attributes by element
    1. <input> type
      1. <input type="button">
      2. <input type="checkbox">
      3. <input type="color">
      4. <input type="date">
      5. <input type="datetime-local">
      6. <input type="email">
      7. <input type="file">
      8. <input type="hidden">
      9. <input type="image">
      10. <input type="month">
      11. <input type="number">
      12. <input type="password">
      13. <input type="radio">
      14. <input type="range">
      15. <input type="reset">
      16. <input type="search">
      17. <input type="submit">
      18. <input type="tel">
      19. <input type="text">
      20. <input type="time">
      21. <input type="url">
      22. <input type="week">
    2. <script> type
      1. importmap
      2. speculationrules Experimental
    3. <meta> name
      1. color-scheme
      2. referrer
      3. robots
      4. theme-color
      5. viewport
    4. <meta> http-equiv
  15. Attribute values
    1. rel keywords
      1. rel="alternate stylesheet"
      2. rel="compression-dictionary" Experimental
      3. rel="dns-prefetch"
      4. rel="manifest"
      5. rel="me"
      6. rel="modulepreload"
      7. rel="noopener"
      8. rel="noreferrer"
      9. rel="preconnect"
      10. rel="prefetch"
      11. rel="preload"
      12. rel="prerender" Non-standard Deprecated

Từ khóa » Html Offical Website