{"id":28751,"date":"2016-12-19T23:01:20","date_gmt":"2016-12-19T15:01:20","guid":{"rendered":"https:\/\/www.hongkiat.com\/blog\/?p=28751"},"modified":"2023-04-06T21:57:49","modified_gmt":"2023-04-06T13:57:49","slug":"html-5-1-new-features","status":"publish","type":"post","link":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/","title":{"rendered":"10 New Features of HTML 5.1 &amp; How to Use Them IRL"},"content":{"rendered":"<p>The HTML specification got a <strong>major overhaul<\/strong> a couple of weeks ago when <a href=\"https:\/\/www.w3.org\/\" target=\"_blank\" rel=\"noopener nofollow\">W3C<\/a> published its <strong><a href=\"https:\/\/www.w3.org\/TR\/html\/\" target=\"_blank\" rel=\"noopener nofollow\">new HTML 5.1 recommendation<\/a><\/strong> in November 2016. In <a href=\"https:\/\/www.w3.org\/blog\/2016\/11\/html-5-1-is-the-gold-standard\/\" target=\"_blank\" rel=\"noopener nofollow\">its recent blog post<\/a>, W3C called the new major release the <strong>gold standard<\/strong>, as HTML 5.1 provide us with new ways of how we can use HTML to create more flexible web experiences.<\/p>\n<p>In this article, we\u2019re going to have a look at its new features you can make use of <strong>without touching JavaScript<\/strong>, however the improvements of the JavaScript background are also remarkable, as you can see it in the <strong><a href=\"https:\/\/www.w3.org\/TR\/html\/changes\" target=\"_blank\" rel=\"noopener nofollow\">official change log<\/a><\/strong>.<\/p>\n<figure><a href=\"https:\/\/www.w3.org\/TR\/html\/\" target=\"_blank\" rel=\"noopener nofollow\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/hmtl-51-specs.jpg\" width=\"700\" height=\"359\" alt=\"HTML 5.1 Recommendation\"><\/a><\/figure>\n<p>Note that currently not all browsers support all of these features, so don\u2019t forget to <strong><a href=\"https:\/\/caniuse.com\/\" target=\"_blank\" rel=\"noopener\">check browser support<\/a><\/strong> before you use them in production. If you are interested in the <strong>further development of the HTML standard<\/strong>, you can check out the working draft of <a href=\"https:\/\/www.w3.org\/TR\/html52\/\" target=\"_blank\" rel=\"noopener nofollow\">HTML 5.2<\/a> as well.<\/p>\n<p class=\"note\"> <strong>Recommended Reading:<\/strong> <a href=\"https:\/\/www.hongkiat.com\/blog\/aria-web-standards\/\">A Look Into: ARIA Web Standards & HTML Apps Accessibility<\/a><\/p>\n<h2>1. Define multiple image resources for responsive design<\/h2>\n<p>In HTML 5.1, you can use <strong><a href=\"https:\/\/www.w3.org\/TR\/html\/semantics-embedded-content.html#elementdef-picture\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;picture&gt;<\/code><\/a><\/strong> tag together with the <strong><code>srcset<\/code><\/strong> attribute to make <strong>responsive image selection<\/strong> possible. The <code>&lt;picture&gt;<\/code> tag represents an <strong>image container<\/strong> that allows developers to <strong>declare different image resources<\/strong> in order to adapt to the <abbr title=\"User Agent\">UA<\/abbr>\u2018s viewport size, screen pixel density, screen type, and other parameters used in <strong>responsive design<\/strong>.<\/p>\n<p>The <code>&lt;picture&gt;<\/code> tag itself doesn\u2019t display anything, it functions merely as <strong>context for the multiple image resources<\/strong>. You need to declare the <strong>default image resource<\/strong> as the value of the <code>src<\/code> attribute of the <code>&lt;img&gt;<\/code> tag, and the <strong>alternative image resources<\/strong> go within the <code>srcset<\/code> attributes of the <code>&lt;img&gt;<\/code> and <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/HTML\/Element\/source\" target=\"_blank\" rel=\"noopener\"><code>&lt;source&gt;<\/code><\/a> elements.<\/p>\n<p><strong>Code example:<\/strong><\/p>\n<pre>\r\n&lt;picture&gt;\r\n\t&lt;source srcset=\"mobile.jpg, mobile-hd.jpg 2x\"\r\n      media=\"(max-width: 360px)\"&gt;\r\n\t&lt;source srcset=\"large.jpg, large-hd.jpg 2x\"\r\n      media=\"(min-width: 1920px)\"&gt;\r\n  &lt;img src=\"default.jpg\" srcset=\"default-hd.jpg 2x\"\r\n      alt=\"your image\"&gt;\r\n&lt;\/picture&gt;\r\n<\/pre>\n<h2>2. Show or hide extra information<\/h2>\n<p>With the <strong><a href=\"https:\/\/www.w3.org\/TR\/html\/interactive-elements.html#elementdef-details\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;details&gt;<\/code><\/a><\/strong> and <strong><a href=\"https:\/\/www.w3.org\/TR\/html\/interactive-elements.html#the-summary-element\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;summary&gt;<\/code><\/a><\/strong> tags, you can <strong>add extended information<\/strong> to a content piece. The extra information <strong>isn\u2019t shown by default<\/strong>, but if users are interested, they <strong>have the option to take a look<\/strong>. In your code, you are supposed to <strong>place the <code>&lt;summary&gt;<\/code> tag inside <code>&lt;details&gt;<\/code><\/strong>. After the <code>&lt;summary&gt;<\/code> tag you can <strong>add the extra information<\/strong> you want to hide.<\/p>\n<p><strong>Code example:<\/strong><\/p>\n<pre>\r\n&lt;section&gt;\r\n  &lt;h2&gt;Error Message&lt;\/h2&gt;\r\n  &lt;details&gt;\r\n  &lt;summary&gt;We couldn't finish downloading this video.&lt;\/summary&gt;\r\n  &lt;dl&gt;\r\n    &lt;dt&gt;File name:&lt;\/dt&gt;&lt;dd&gt;yourfile.mp4&lt;\/dd&gt;\r\n    &lt;dt&gt;File size:&lt;\/dt&gt;&lt;dd&gt;100 MB&lt;\/dd&gt;\r\n    &lt;dt&gt;Duration:&lt;\/dt&gt;&lt;dd&gt;00:05:27&lt;\/dd&gt;\r\n  &lt;\/dl&gt;\r\n  &lt;\/details&gt;\r\n&lt;\/section&gt;\r\n<\/pre>\n<p>This is how this code example looks like in Firefox 50.0.2:<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/details-and-summary.gif\" width=\"600\" height=\"330\" alt=\"Details and summary tags in practice\"><\/figure>\n<h2>3. Add functionality to the browser\u2019s context menu<\/h2>\n<p>With the <strong><a href=\"https:\/\/www.w3.org\/TR\/html\/interactive-elements.html#the-menuitem-element\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;menuitem&gt;<\/code><\/a><\/strong> element and its <strong><code>type=\"context\"<\/code><\/strong> attribute, you can <strong>add custom functionality<\/strong> to the <strong>context menu of the browser<\/strong>. You need to assign <code>&lt;menuitem&gt;<\/code> as the child element of the <code>&lt;menu&gt;<\/code> tag.\n  The <code>id<\/code> of the <code>&lt;menu&gt;<\/code> element needs to <strong>carry the same value as the <a href=\"https:\/\/www.w3.org\/TR\/html\/interactive-elements.html#context-menus\" target=\"_blank\" rel=\"noopener nofollow\"><code>contextmenu<\/code><\/a> attribute<\/strong> of the element to which we want to add the context menu to (which is the <code>&lt;button&gt;<\/code> element in the example below).<\/p>\n<p><strong>Code example:<\/strong><\/p>\n<pre>\r\n&lt;button contextmenu=\"rightclickmenu\"&gt;Right click me&lt;\/button&gt;\r\n&lt;menu type=\"context\" id=\"rightclickmenu\"&gt;\r\n  &lt;menuitem type=\"checkbox\" label=\"I \u2665 HTML5.1.\"&gt;\r\n&lt;\/menu&gt;\r\n<\/pre>\n<p>The <code>&lt;menuitem&gt;<\/code> tag can <strong>have three different types<\/strong>, <code>\"checkbox\"<\/code>, <code>\"command\"<\/code> (to which you need to add an action with JavaScript), and <code>radio<\/code>. It\u2019s possible to add more than one menu item to a context menu, however the <strong><a href=\"https:\/\/caniuse.com\/#search=contextmenu\" target=\"_blank\" rel=\"noopener\">browser support<\/a><\/strong> for this feature is <strong>not very good yet<\/strong>. Chrome 54 doesn\u2019t support it, and Firefox 50 only allows the presence of one extra context menu. Below you can see how the code example works in Firefox 50.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/contextmenu.gif\" width=\"600\" height=\"360\" alt=\"Contextmenu attribute\"><\/figure>\n<h2>4. Nest headers and footers<\/h2>\n<p>HTML 5.1 allows you to <strong>nest <a href=\"https:\/\/www.w3.org\/TR\/html\/sections.html#elementdef-header\" target=\"_blank\" rel=\"noopener nofollow\">headers<\/a> and <a href=\"https:\/\/www.w3.org\/TR\/html\/sections.html#the-footer-element\" target=\"_blank\" rel=\"noopener nofollow\">footers<\/a><\/strong> if each level is <strong>contained within <a href=\"https:\/\/www.w3.org\/TR\/html\/dom.html#sectioning-content\" target=\"_blank\" rel=\"noopener nofollow\">sectioning content<\/a><\/strong>. The note below is a screenshot from the <a href=\"https:\/\/www.w3.org\/TR\/html\/sections.html#elementdef-header\" target=\"_blank\" rel=\"noopener nofollow\">W3C docs<\/a>, and advises developers about the right way of header and footer nesting.<\/p>\n<figure><a href=\"https:\/\/www.w3.org\/TR\/html\/sections.html#elementdef-header\" target=\"_blank\" rel=\"noopener nofollow\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/header-note.jpg\" width=\"700\" height=\"120\" alt=\"W3C note about header nesting\"><\/a><\/figure>\n<p>This feature can be useful if you want to add <strong>elaborated headers to <a href=\"https:\/\/www.hongkiat.com\/blog\/html-5-semantics\/\">semantic sectioning elements<\/a><\/strong>, such as <code>&lt;article&gt;<\/code> and <code>&lt;section&gt;<\/code>. The code example below creates a sidebar inside the header, the <code>&lt;aside&gt;<\/code> tag is also a sectioning element, and <strong>adds extra information<\/strong> about the author inside it. The sidebar inside the header <strong>has its own header<\/strong> as well, with a subtitle and the author\u2019s contact info.<\/p>\n<p><strong>Code example:<\/strong><\/p>\n<pre>\r\n\t&lt;article&gt;\r\n\t  &lt;header&gt;\r\n\t    &lt;h1&gt;Article Title&lt;\/h1&gt;\r\n\t    &lt;aside&gt;\r\n\t      &lt;header&gt;\r\n\t        &lt;h2&gt;About the author&lt;\/h2&gt;\r\n\t\t\t\t\t&lt;p&gt;&lt;a href=\"#\"&gt;Email&lt;\/a&gt;&lt;a href=\"#\"&gt;Twitter&lt;\/a&gt;&lt;\/p&gt;\r\n\t      &lt;\/header&gt;\r\n\t      &lt;img src=\"photo.jpg\" alt=\"Author photo\"&gt;\r\n\t      &lt;p&gt;Author bio ... &lt;\/p&gt;\r\n\t    &lt;\/aside&gt;\r\n\t  &lt;\/header&gt;\r\n\t  &lt;p&gt;Article intro&lt;\/p&gt;\r\n\t  &lt;p&gt;Other paragraphs ...&lt;\/p&gt;\r\n\t&lt;\/article&gt;\r\n<\/pre>\n<h2>5. Use cryptographic nonces for styles & scripts<\/h2>\n<p>With HTML 5.1, you can <strong>add cryptographic nonces to styles and scripts<\/strong>. You can use the <code>nonce<\/code> attribute <strong>within the <a href=\"https:\/\/www.w3.org\/TR\/html\/semantics-scripting.html#element-attrdef-script-nonce\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;script&gt;<\/code><\/a> and the <a href=\"https:\/\/www.w3.org\/TR\/html\/document-metadata.html#element-attrdef-style-nonce\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;style&gt;<\/code><\/a> elements<\/strong>. A cryptographic nonce is a randomly generated number that can be <strong>used only once<\/strong>, and <strong>has to be regenerated<\/strong> for every page request. A nonce can be used by the <strong><a href=\"https:\/\/www.cspplayground.com\/\" target=\"_blank\" rel=\"noopener\">Content Security Policy<\/a><\/strong> of a website to decide if the certain script or style should be applied on the page. In <a href=\"https:\/\/web.dev\/\/security\/csp\/\" target=\"_blank\" rel=\"noopener nofollow\">Google Developers\u2019 Web Fundamentals<\/a> you can read more on the proper usage of nonces and <abbr title=\"Content Security Policy\">CSP<\/abbr>.<\/p>\n<p>Below, you can see a simple code example of how to use the <code>nonce<\/code> attribute, however note that in a real world scenario its value shouldn\u2019t be hard-coded but <strong>randomly generated<\/strong>.<\/p>\n<p><strong>Code example:<\/strong><\/p>\n<pre>\r\n&lt;script nonce='adfjaf8eda64U7'&gt;\r\n  \/\/ some JavaScript\r\n&lt;\/script&gt;\r\n<\/pre>\n<h2>6. Create reverse link relationships<\/h2>\n<p>You can add the <strong><a href=\"https:\/\/www.w3.org\/TR\/html\/document-metadata.html#element-attrdef-a-rev\" target=\"_blank\" rel=\"noopener nofollow\"><code>rev<\/code><\/a> attribute<\/strong> to your links again. It was previously defined in HTML 4, however it wasn\u2019t supported by HTML5. HTML 5.1 allows developers to <strong>use this attribute again for the <code>&lt;link&gt;<\/code> and <code>&lt;a&gt;<\/code> elements<\/strong>. The <code>rev<\/code> attribute is the <strong>opposite of <code>rel<\/code><\/strong>, it specifies the relationship of the current and the linked document <strong>in the reverse direction<\/strong> (how the current document is related to the linked one).<\/p>\n<p><strong>Code example:<\/strong><\/p>\n<pre>\r\n&lt;!-- Current document is the parent of the\r\nlinked category.html document --&gt;\r\n&lt;link rev=\"parent\" href=\"category.html\"&gt;\r\n<\/pre>\n<p>The <code>rev<\/code> attribute has been included in the HTML 5.1 specs primarily to <strong>support <abbr title=\"Resource Description Framework in Attributes\">RDFa<\/abbr><\/strong> which is a widely-used <strong>structured data markup format<\/strong>, and <a href=\"https:\/\/www.w3.org\/TR\/xhtml-rdfa-primer\/\" target=\"_blank\" rel=\"noopener nofollow\">extends the HTML language<\/a>.<\/p>\n<p class=\"note\"> <strong>Recommended Reading:<\/strong> <a href=\"https:\/\/www.hongkiat.com\/blog\/rich-snippets-schema-org-vocab\/\">Improve Your Search Results with Rich Snippets & Schema.org Vocabulary<\/a><\/p>\n<h2>7. Use zero-width images<\/h2>\n<p>HTML 5.1 makes it possible to <strong><a href=\"https:\/\/www.w3.org\/TR\/html\/semantics-embedded-content.html#an-image-not-intended-for-the-user\" target=\"_blank\" rel=\"noopener nofollow\">create zero-width images<\/a><\/strong> by permitting developers to use the <strong><code>width<\/code> attribute with <code>0<\/code> as value<\/strong>. This feature can be useful if you want to include images that you <strong>don\u2019t want to show to users<\/strong>, such as tracking image files. Zero-width images are recommended to be <strong>used together with empty <code>alt<\/code> attributes<\/strong>.<\/p>\n<p><strong>Code example:<\/strong><\/p>\n<pre>\r\n&lt;img src=\"yourimage.jpg\" width=\"0\" height=\"0\" alt=\"\"&gt;\r\n<\/pre>\n<h2>8. Separate browser contexts to prevent phishing attacks<\/h2>\n<p>Using same origin links on your website can eventually get you into some trouble. The vulnerability is called the <strong><a href=\"https:\/\/www.jitbit.com\/alexblog\/256-targetblank---the-most-underestimated-vulnerability-ever\/\" target=\"_blank\" rel=\"noopener\">target=\u201d_blank\u201d exploit<\/a><\/strong>, and it\u2019s a nasty phishing attack. You can (safely) test <strong>how this attack works<\/strong> <a href=\"https:\/\/mathiasbynens.github.io\/rel-noopener\/\" target=\"_blank\" rel=\"noopener\">on this clever Github demo page<\/a>, and its background code you can find <a href=\"https:\/\/github.com\/mathiasbynens\/rel-noopener\" target=\"_blank\" rel=\"noopener\">here on Github<\/a>.<\/p>\n<p>HTML 5.1 has standardized the usage of the <strong><a href=\"https:\/\/www.w3.org\/TR\/html51\/links.html#element-attrdef-a-rel\" target=\"_blank\" rel=\"noopener nofollow\"><code>rel=\"noopener\"<\/code><\/a><\/strong> attribute which <strong>separates browser contexts<\/strong> therefore eliminates this issue. You can use <code>rel=\"noopener\"<\/code> within the <code>&lt;a&gt;<\/code> and <code>&lt;area&gt;<\/code> elements.<\/p>\n<p><strong>Code example:<\/strong><\/p>\n<pre>\r\n&lt;a href=\"#\" target=\"_blank\" rel=\"noopener\"&gt;\r\n\tYour link that won't make troubles\r\n&lt;\/a&gt;\r\n<\/pre>\n<h2>9. Create an empty option<\/h2>\n<p>HTML 5.1 allows developers to <strong>create an empty <a href=\"https:\/\/www.w3.org\/TR\/html\/sec-forms.html#elementdef-option\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;option&gt;<\/code><\/a> element<\/strong>. The <code>&lt;option&gt;<\/code> tag can be the child element of the <code>&lt;select&gt;<\/code>, <code>&lt;optgroup&gt;<\/code>, or <code>&lt;datalist&gt;<\/code> elements. The possibility of <strong>having an empty <code>&lt;option&gt;<\/code><\/strong> can be useful if you don\u2019t want to suggest which option users should select, and which can be useful when you want to design user-friendly forms.<\/p>\n<p class=\"note\"> <strong>Recommended Reading:<\/strong> <a href=\"https:\/\/www.hongkiat.com\/blog\/form-ux-design-tips\/\">4 Form Design UX Tips You Should Know (With Examples)<\/a><\/p>\n<h2>10. Handle figure captions more flexibly<\/h2>\n<p>The <a href=\"https:\/\/www.w3.org\/TR\/html\/grouping-content.html#elementdef-figcaption\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;figcaption&gt;<\/code><\/a> tag represents a <strong>caption or a legend<\/strong> belonging to the <a href=\"https:\/\/www.w3.org\/TR\/html\/grouping-content.html#elementdef-figure\" target=\"_blank\" rel=\"noopener nofollow\"><code>&lt;figure&gt;<\/code><\/a> element which is a container for visuals, such as illustrations, photos, and diagrams. Previously, the <code>&lt;figcaption&gt;<\/code> tag could be used only <strong>as the first or last child of the <code>&lt;figure&gt;<\/code> element<\/strong>. HTML 5.1 <strong>has loosened this rule<\/strong>, and now <code>&lt;figcaption&gt;<\/code> <strong>can appear anywhere<\/strong> within its <code>&lt;figure&gt;<\/code> container.<\/p>","protected":false},"excerpt":{"rendered":"<p>Discover the latest HTML 5.1 features that will enhance your web development skills. Stay up-to-date and create better websites.<\/p>\n","protected":false},"author":146,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3392],"tags":[506],"topic":[4520],"class_list":["entry-content","is-maxi"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.8 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>10 New Features of HTML 5.1 &amp; How to Use Them IRL - Hongkiat<\/title>\n<meta name=\"description\" content=\"Discover the latest HTML 5.1 features that will enhance your web development skills. Stay up-to-date and create better websites.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"10 New Features of HTML 5.1 &amp; How to Use Them IRL\" \/>\n<meta property=\"og:description\" content=\"Discover the latest HTML 5.1 features that will enhance your web development skills. Stay up-to-date and create better websites.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/\" \/>\n<meta property=\"og:site_name\" content=\"Hongkiat\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hongkiatcom\" \/>\n<meta property=\"article:published_time\" content=\"2016-12-19T15:01:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-04-06T13:57:49+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/hmtl-51-specs.jpg\" \/>\n<meta name=\"author\" content=\"Anna Monus\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:site\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Anna Monus\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/\"},\"author\":{\"name\":\"Anna Monus\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/a601053a0ab457901e00cdc83bd5359e\"},\"headline\":\"10 New Features of HTML 5.1 &amp; How to Use Them IRL\",\"datePublished\":\"2016-12-19T15:01:20+00:00\",\"dateModified\":\"2023-04-06T13:57:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/\"},\"wordCount\":1098,\"commentCount\":4,\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/html-5-1-new-features\\\/hmtl-51-specs.jpg\",\"keywords\":[\"HTML\"],\"articleSection\":[\"Coding\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/\",\"name\":\"10 New Features of HTML 5.1 &amp; How to Use Them IRL - Hongkiat\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/html-5-1-new-features\\\/hmtl-51-specs.jpg\",\"datePublished\":\"2016-12-19T15:01:20+00:00\",\"dateModified\":\"2023-04-06T13:57:49+00:00\",\"description\":\"Discover the latest HTML 5.1 features that will enhance your web development skills. Stay up-to-date and create better websites.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/#primaryimage\",\"url\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/html-5-1-new-features\\\/hmtl-51-specs.jpg\",\"contentUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/html-5-1-new-features\\\/hmtl-51-specs.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/html-5-1-new-features\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"10 New Features of HTML 5.1 &amp; How to Use Them IRL\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"name\":\"Hongkiat\",\"description\":\"Tech and Design Tips\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\",\"name\":\"Hongkiat.com\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"contentUrl\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"width\":1200,\"height\":799,\"caption\":\"Hongkiat.com\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/hongkiatcom\",\"https:\\\/\\\/x.com\\\/hongkiat\",\"https:\\\/\\\/www.pinterest.com\\\/hongkiat\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/a601053a0ab457901e00cdc83bd5359e\",\"name\":\"Anna Monus\",\"description\":\"Anna is Technical Editor and Writer for Hongkiat.com. She mainly covers front-end frameworks, web standards, accessibility, WordPress development, and UX design.\",\"sameAs\":[\"https:\\\/\\\/www.annalytic.com\\\/\"],\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/author\\\/anna_monus\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"10 New Features of HTML 5.1 &amp; How to Use Them IRL - Hongkiat","description":"Discover the latest HTML 5.1 features that will enhance your web development skills. Stay up-to-date and create better websites.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/","og_locale":"en_US","og_type":"article","og_title":"10 New Features of HTML 5.1 &amp; How to Use Them IRL","og_description":"Discover the latest HTML 5.1 features that will enhance your web development skills. Stay up-to-date and create better websites.","og_url":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/","og_site_name":"Hongkiat","article_publisher":"https:\/\/www.facebook.com\/hongkiatcom","article_published_time":"2016-12-19T15:01:20+00:00","article_modified_time":"2023-04-06T13:57:49+00:00","og_image":[{"url":"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/hmtl-51-specs.jpg","type":"","width":"","height":""}],"author":"Anna Monus","twitter_card":"summary_large_image","twitter_creator":"@hongkiat","twitter_site":"@hongkiat","twitter_misc":{"Written by":"Anna Monus","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/#article","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/"},"author":{"name":"Anna Monus","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/a601053a0ab457901e00cdc83bd5359e"},"headline":"10 New Features of HTML 5.1 &amp; How to Use Them IRL","datePublished":"2016-12-19T15:01:20+00:00","dateModified":"2023-04-06T13:57:49+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/"},"wordCount":1098,"commentCount":4,"publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/#primaryimage"},"thumbnailUrl":"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/hmtl-51-specs.jpg","keywords":["HTML"],"articleSection":["Coding"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/","url":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/","name":"10 New Features of HTML 5.1 &amp; How to Use Them IRL - Hongkiat","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/#primaryimage"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/#primaryimage"},"thumbnailUrl":"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/hmtl-51-specs.jpg","datePublished":"2016-12-19T15:01:20+00:00","dateModified":"2023-04-06T13:57:49+00:00","description":"Discover the latest HTML 5.1 features that will enhance your web development skills. Stay up-to-date and create better websites.","breadcrumb":{"@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/#primaryimage","url":"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/hmtl-51-specs.jpg","contentUrl":"https:\/\/assets.hongkiat.com\/uploads\/html-5-1-new-features\/hmtl-51-specs.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hongkiat.com\/blog\/html-5-1-new-features\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hongkiat.com\/blog\/"},{"@type":"ListItem","position":2,"name":"10 New Features of HTML 5.1 &amp; How to Use Them IRL"}]},{"@type":"WebSite","@id":"https:\/\/www.hongkiat.com\/blog\/#website","url":"https:\/\/www.hongkiat.com\/blog\/","name":"Hongkiat","description":"Tech and Design Tips","publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hongkiat.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.hongkiat.com\/blog\/#organization","name":"Hongkiat.com","url":"https:\/\/www.hongkiat.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","contentUrl":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","width":1200,"height":799,"caption":"Hongkiat.com"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hongkiatcom","https:\/\/x.com\/hongkiat","https:\/\/www.pinterest.com\/hongkiat\/"]},{"@type":"Person","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/a601053a0ab457901e00cdc83bd5359e","name":"Anna Monus","description":"Anna is Technical Editor and Writer for Hongkiat.com. She mainly covers front-end frameworks, web standards, accessibility, WordPress development, and UX design.","sameAs":["https:\/\/www.annalytic.com\/"],"url":"https:\/\/www.hongkiat.com\/blog\/author\/anna_monus\/"}]}},"jetpack_featured_media_url":"https:\/\/","jetpack_shortlink":"https:\/\/wp.me\/p4uxU-7tJ","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/28751","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/users\/146"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/comments?post=28751"}],"version-history":[{"count":4,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/28751\/revisions"}],"predecessor-version":[{"id":66306,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/28751\/revisions\/66306"}],"wp:attachment":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/media?parent=28751"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/categories?post=28751"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/tags?post=28751"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/topic?post=28751"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}