2016-04-20 22:08:36 +02:00
# HEAD
2016-05-31 20:40:58 +02:00
A list of everything that could go in the `<head>` of your document
2016-05-31 03:52:14 +02:00
2016-06-01 23:33:28 +02:00
## Table of Contents
2016-05-31 03:52:14 +02:00
- [Recommended Minimum ](#recommended-minimum )
- [Elements ](#elements )
2016-06-04 01:07:21 +02:00
- [Meta ](#meta )
- [Meta: Not Recommended ](#meta-not-recommended )
- [Link ](#link )
- [Link: Not Recommended ](#link-not-recommended )
2016-05-31 03:52:14 +02:00
- [Favicons ](#favicons )
- [Social ](#social )
2016-05-31 16:04:29 +02:00
- [Facebook / Open Graph ](#facebook--open-graph )
- [Facebook / Instant Articles ](#facebook--instant-articles )
2016-05-31 03:52:14 +02:00
- [Twitter ](#twitter )
2016-05-31 16:04:29 +02:00
- [Google+ / Schema.org ](#google--schemaorg )
2016-05-31 03:52:14 +02:00
- [OEmbed ](#oembed )
2016-06-04 01:40:21 +02:00
- [Browsers / Platforms ](#browsers--platforms )
2016-05-31 03:52:14 +02:00
- [Apple iOS ](#apple-ios )
- [Apple Safari ](#apple-safari )
- [Google Android ](#google-android )
- [Google Chrome ](#google-chrome )
- [Microsoft Internet Explorer ](#microsoft-internet-explorer )
- [Microsoft Internet Explorer: Legacy, Do Not Use! ](#microsoft-internet-explorer-legacy-do-not-use )
2016-06-04 01:40:21 +02:00
- [Browsers (Chinese) ](#browsers-chinese )
2016-05-31 03:52:14 +02:00
- [360 Browser ](#360-browser )
- [QQ Mobile Browser ](#qq-mobile-browser )
2016-06-04 01:40:21 +02:00
- [UC Mobile Browser ](#uc-mobile-browser )
2016-05-31 03:52:14 +02:00
- [App Links ](#app-links )
- [Notes ](#notes )
- [Performance ](#performance )
- [Other Resources ](#other-resources )
2016-05-31 20:39:56 +02:00
- [Related Projects ](#related-projects )
2016-06-10 19:14:43 +02:00
- [Other Formats ](#other-formats )
2016-06-06 01:30:58 +02:00
- [Translations ](#translations )
2016-05-31 03:52:14 +02:00
- [Contributing ](#contributing )
2016-06-06 03:50:11 +02:00
- [Author ](#author )
- [License ](#license )
2016-04-20 22:08:36 +02:00
2016-05-24 06:20:47 +02:00
## Recommended Minimum
Below are the essential tags for basic, minimalist websites:
```html
< meta charset = "utf-8" >
< meta http-equiv = "x-ua-compatible" content = "ie=edge" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
2016-06-01 23:39:09 +02:00
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
2016-05-24 06:20:47 +02:00
< title > Page Title< / title >
```
2016-04-21 20:58:43 +02:00
## Elements
``` html
2016-05-30 07:31:48 +02:00
<!-- Document Title -->
2016-04-21 20:58:43 +02:00
< title > Page Title< / title >
2016-05-30 07:31:48 +02:00
<!-- Base URL to use for all relative URLs contained within the document -->
2016-04-21 20:58:43 +02:00
< base href = "https://example.com/page.html" >
2016-05-30 07:31:48 +02:00
<!-- External CSS -->
2016-05-30 07:33:24 +02:00
< link rel = "stylesheet" href = "styles.css" >
2016-05-30 07:31:48 +02:00
<!-- In - document CSS -->
2016-04-21 20:58:43 +02:00
< style >
2016-05-30 07:31:48 +02:00
/* ... */
2016-04-21 20:58:43 +02:00
< / style >
2016-05-30 07:31:48 +02:00
<!-- JavaScript -->
2016-04-21 20:58:43 +02:00
< script src = "script.js" > < / script >
2016-07-01 13:08:04 +02:00
< noscript > <!-- no JS alternative --> < / noscript >
2016-04-21 20:58:43 +02:00
```
2016-06-04 01:07:21 +02:00
## Meta
2016-04-20 22:08:36 +02:00
``` html
2016-08-13 00:57:57 +02:00
< meta charset = "utf-8" > <!-- set character encoding for the document -->
2016-04-24 18:51:58 +02:00
< meta http-equiv = "x-ua-compatible" content = "ie=edge" >
2016-05-09 17:21:47 +02:00
< meta name = "viewport" content = "width=device-width, initial-scale=1, shrink-to-fit=no" >
2016-04-24 18:51:58 +02:00
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
2016-05-31 20:59:14 +02:00
2016-06-04 02:06:28 +02:00
<!-- Allows control over where resources are loaded from -->
< meta http-equiv = "Content-Security-Policy" content = "default-src 'self'" >
<!-- Place as early in the document as possible -->
<!-- Only applies to content below this tag -->
2016-05-31 20:59:14 +02:00
<!-- Name of web application (only should be used if the website is used as an app) -->
2016-05-03 19:28:46 +02:00
< meta name = "application-name" content = "Application Name" >
2016-05-31 20:59:14 +02:00
2016-06-04 01:33:34 +02:00
<!-- Short description of the page (limit to 150 characters) -->
<!-- In *some* situations this description is used as a part of the snippet shown in the search results. -->
< meta name = "description" content = "A description of the page" >
2016-05-31 20:59:14 +02:00
2016-06-04 01:33:34 +02:00
<!-- Control the behavior of search engine crawling and indexing -->
< meta name = "robots" content = "index,follow,noodp" > <!-- All Search Engines -->
< meta name = "googlebot" content = "index,follow" > <!-- Google Specific -->
2016-05-31 20:59:14 +02:00
2016-06-04 01:33:34 +02:00
<!-- Tells Google not to show the sitelinks search box -->
2016-04-26 05:47:12 +02:00
< meta name = "google" content = "nositelinkssearchbox" >
2016-05-31 20:59:14 +02:00
2016-06-04 01:33:34 +02:00
<!-- Tells Google not to provide a translation for this page -->
< meta name = "google" content = "notranslate" >
<!-- Verify ownership for Google Search Console -->
2016-04-26 05:47:12 +02:00
< meta name = "google-site-verification" content = "verification_token" >
2016-05-31 20:59:14 +02:00
2016-08-09 13:05:16 +02:00
<!-- Used to name software used to build the website (i.e. - WordPress, Dreamweaver) -->
2016-05-30 08:10:06 +02:00
< meta name = "generator" content = "program" >
2016-05-31 20:59:14 +02:00
2016-06-14 14:59:31 +02:00
<!-- Short description of your site's subject -->
2016-06-04 01:33:34 +02:00
< meta name = "subject" content = "your website's subject" >
2016-07-07 00:32:09 +02:00
<!-- Very short (10 words or less) description. Primarily for academic papers -->
2016-04-20 22:08:36 +02:00
< meta name = "abstract" content = "" >
2016-05-31 20:59:14 +02:00
<!-- Full domain name or web address -->
2016-04-20 22:08:36 +02:00
< meta name = "url" content = "https://example.com/" >
2016-05-31 20:59:14 +02:00
2016-04-20 22:08:36 +02:00
< meta name = "directory" content = "submission" >
2016-05-31 20:59:14 +02:00
<!-- Gives a general age rating based on sites content -->
2016-04-20 22:08:36 +02:00
< meta name = "rating" content = "General" >
2016-05-31 20:59:14 +02:00
<!-- Allows control over how referrer information is passed -->
2016-09-16 13:57:53 +02:00
< meta name = "referrer" content = "no-referrer" >
2016-05-31 20:59:14 +02:00
2016-05-28 22:10:18 +02:00
<!-- Disable automatic detection and formatting of possible phone numbers -->
< meta name = "format-detection" content = "telephone=no" >
2016-07-07 00:05:20 +02:00
<!-- Completely opt out of DNS prefetching by setting to 'off' -->
< meta http-equiv = "x-dns-prefetch-control" content = "off" >
2016-07-10 16:26:49 +02:00
<!-- Stores cookie on the client web browser for client identification -->
2016-07-15 19:25:14 +02:00
< meta http-equiv = "set-cookie" content = "name=value; expires=date; path=url" >
2016-07-10 16:26:49 +02:00
<!-- Specifies the page to appear in a specific frame -->
< meta http-equiv = "Window-Target" content = "_value" >
2016-05-27 17:43:12 +02:00
<!-- Geo tags -->
2016-06-02 21:00:12 +02:00
< meta name = "ICBM" content = "latitude, longitude" >
< meta name = "geo.position" content = "latitude;longitude" >
< meta name = "geo.region" content = "country[-state]" > <!-- Country code (ISO 3166 - 1): mandatory, state code (ISO 3166 - 2): optional; eg. content="US" / content="US - NY" -->
< meta name = "geo.placename" content = "city/town" > <!-- eg. content="New York City" -->
2016-05-04 16:15:56 +02:00
```
2016-06-04 01:01:15 +02:00
- [Meta tags that Google understands ](https://support.google.com/webmasters/answer/79812?hl=en )
2016-06-05 23:11:35 +02:00
- [WHATWG Wiki: MetaExtensions ](https://wiki.whatwg.org/wiki/MetaExtensions )
2016-05-27 17:43:12 +02:00
- [ICBM on Wikipedia ](https://en.wikipedia.org/wiki/ICBM_address#Modern_use )
- [Geotagging on Wikipedia ](https://en.wikipedia.org/wiki/Geotagging#HTML_pages )
2016-06-04 01:07:21 +02:00
### Meta: Not Recommended
2016-07-07 00:32:09 +02:00
Below are the meta attributes which are not recommended for use as they had low adoption rate, or have been deprecated:
2016-05-04 16:15:56 +02:00
```html
2016-05-23 21:53:31 +02:00
<!-- Used to declare the document language, but not well supported. Better to use <html lang=""> -->
2016-05-04 16:15:56 +02:00
< meta name = "language" content = "en" >
2016-05-07 17:28:28 +02:00
2016-05-28 22:06:37 +02:00
<!-- Google disregards & Bing considers it an indicator of spam -->
< meta name = "keywords" content = "your,keywords,here,comma,separated,no,spaces" >
2016-05-23 21:53:31 +02:00
<!-- No evidence of current use in any search engines -->
< meta name = "revised" content = "Sunday, July 18th, 2010, 5:15 pm" >
2016-05-07 17:28:28 +02:00
2016-05-23 21:53:31 +02:00
<!-- Provides an easy way for spam bots to harvest email addresses -->
< meta name = "reply-to" content = "email@example.com" >
2016-05-07 17:28:28 +02:00
2016-05-23 21:53:31 +02:00
<!-- Better to use <link rel="author"> or humans.txt file -->
2016-05-04 16:15:56 +02:00
< meta name = "author" content = "name, email@example.com" >
< meta name = "designer" content = "" >
< meta name = "owner" content = "" >
2016-05-07 17:28:28 +02:00
2016-05-23 21:53:31 +02:00
<!-- Tells search bots to revisit the page after a period. This is not supported because most Search Engines now use random intervals for re - crawling a webpage -->
2016-04-20 22:08:36 +02:00
< meta name = "revisit-after" content = "7 days" >
2016-05-07 17:28:28 +02:00
2016-06-04 01:33:34 +02:00
<!-- Sends user to a new URL after a certain amount of time -->
<!-- The W3C recommends that this tag not be used. Google recommends using a server - side 301 redirect instead. -->
< meta http-equiv = "refresh" content = "300; url=https://example.com/" >
2016-04-20 22:08:36 +02:00
2016-07-07 00:32:09 +02:00
<!-- Describes the topic of the website -->
< meta name = "topic" content = "" >
<!-- Brief summary of the company or purpose of the website -->
< meta name = "summary" content = "" >
<!-- A deprecated tag that does the same as the keywords meta tag -->
< meta name = "classification" content = "business" >
<!-- Does the same as URL, older and not supported -->
< meta name = "identifier-URL" content = "https://example.com/" >
<!-- Similar function to the keywords tag -->
< meta name = "category" content = "" >
<!-- Makes sure your website shows up in all countries and languages -->
< meta name = "coverage" content = "Worldwide" >
<!-- Does the same as the coverage tag -->
< meta name = "distribution" content = "Global" >
2016-07-10 16:26:49 +02:00
<!-- Controls what user can access on the internet -->
2016-08-12 05:42:12 +02:00
< meta http-equiv = "Pics-label" content = "value" >
2016-07-10 16:26:49 +02:00
2016-04-20 22:08:36 +02:00
<!-- Cache Control -->
2016-05-23 21:53:31 +02:00
<!-- Better to configure cache control server side -->
2016-04-20 22:08:36 +02:00
< meta http-equiv = "Expires" content = "0" >
< meta http-equiv = "Pragma" content = "no-cache" >
< meta http-equiv = "Cache-Control" content = "no-cache" >
```
2016-06-04 01:07:21 +02:00
## Link
2016-04-20 22:08:36 +02:00
``` html
2016-06-08 04:31:42 +02:00
<!-- Helps prevent duplicate content issues -->
< link rel = "canonical" href = "https://example.com/2010/06/9-things-to-do-before-entering-social-media.html" >
<!-- Used to be included before the icon link, but is deprecated and no longer is used -->
2016-06-04 02:28:12 +02:00
< link rel = "shortlink" href = "https://example.com/?p=42" >
2016-06-08 04:31:42 +02:00
<!-- Links to an AMP HTML version of the current document -->
2016-06-04 02:28:12 +02:00
< link rel = "amphtml" href = "https://example.com/path/to/amp-version.html" >
2016-06-08 04:31:42 +02:00
<!-- Points to a CSS stylesheet -->
2016-04-20 22:08:36 +02:00
< link rel = "stylesheet" href = "https://example.com/styles.css" >
2016-06-08 04:31:42 +02:00
<!-- Links to a JSON file that specifies "installation" credentials for web applications -->
2016-06-04 02:28:12 +02:00
< link rel = "manifest" href = "manifest.json" >
2016-06-08 04:31:42 +02:00
<!-- Links to the author of the document -->
2016-06-04 02:28:12 +02:00
< link rel = "author" href = "humans.txt" >
2016-06-08 04:31:42 +02:00
<!-- Refers to a copyright statement that applies to the links context -->
2016-06-04 02:28:12 +02:00
< link rel = "copyright" href = "copyright.html" >
2016-06-08 04:31:42 +02:00
<!-- Gives a reference to a location in your document that may be in another language -->
2016-06-04 08:18:57 +02:00
< link rel = "alternate" href = "https://es.example.com/" hreflang = "es" >
2016-06-08 04:31:42 +02:00
<!-- Gives information about an author or another person -->
2016-04-20 22:08:36 +02:00
< link rel = "me" href = "https://google.com/profiles/thenextweb" type = "text/html" >
2016-05-03 18:55:17 +02:00
< link rel = "me" href = "mailto:name@example.com" >
2016-05-03 19:05:31 +02:00
< link rel = "me" href = "sms:+15035550125" >
2016-06-08 04:31:42 +02:00
<!-- Links to a document that contains an archive link to the current document -->
2016-04-20 22:08:36 +02:00
< link rel = "archives" href = "https://example.com/2003/05/" title = "May 2003" >
2016-06-08 04:31:42 +02:00
<!-- Links to top level resource in an hierarchical structure -->
2016-04-20 22:08:36 +02:00
< link rel = "index" href = "https://example.com/" title = "DeWitt Clinton" >
2016-06-08 04:31:42 +02:00
<!-- Gives the starting point of the document -->
2016-04-20 22:08:36 +02:00
< link rel = "start" href = "https://example.com/photos/pattern_recognition_1_about/" title = "Pattern Recognition 1" >
2016-06-08 04:31:42 +02:00
<!-- Leads to the preceding resource of the sequence the current document is in -->
2016-04-20 22:08:36 +02:00
< link rel = "prev" href = "https://example.com/opensearch/opensearch-and-openid-a-sure-way-to-get-my-attention/" title = "OpenSearch and OpenID? A sure way to get my attention." >
2016-06-08 04:31:42 +02:00
<!-- Gives a self reference - useful when the document has multiple possible references -->
2016-04-20 22:08:36 +02:00
< link rel = "self" type = "application/atom+xml" href = "https://example.com/atomFeed.php?page=3" >
2016-06-08 04:31:42 +02:00
<!-- The first, next, previous, and last documents in a series of documents, respectively -->
2016-04-20 22:08:36 +02:00
< link rel = "first" href = "https://example.com/atomFeed.php" >
< link rel = "next" href = "https://example.com/atomFeed.php?page=4" >
< link rel = "previous" href = "https://example.com/atomFeed.php?page=2" >
< link rel = "last" href = "https://example.com/atomFeed.php?page=147" >
2016-06-08 04:31:42 +02:00
<!-- Used when using a 3rd party service to maintain a blog -->
2016-04-20 22:08:36 +02:00
< link rel = "EditURI" href = "https://example.com/xmlrpc.php?rsd" type = "application/rsd+xml" title = "RSD" >
2016-06-08 04:31:42 +02:00
2016-08-09 13:05:16 +02:00
<!-- Forms an automated comment when another WordPress blog links to your WordPress blog or post -->
2016-04-20 22:08:36 +02:00
< link rel = "pingback" href = "https://example.com/xmlrpc.php" >
2016-06-08 04:31:42 +02:00
<!-- Notifies a url when you link to it on your site -->
2016-04-22 02:03:30 +02:00
< link rel = "webmention" href = "https://example.com/webmention" >
2016-06-08 04:31:42 +02:00
<!-- Loads in an external HTML file into the current HTML file -->
2016-04-27 00:43:10 +02:00
< link rel = "import" href = "component.html" >
2016-04-24 07:02:49 +02:00
2016-06-04 02:28:12 +02:00
<!-- Open Search -->
< link rel = "search" href = "/open-search.xml" type = "application/opensearchdescription+xml" title = "Search Title" >
<!-- Feeds -->
< link rel = "alternate" href = "https://feeds.feedburner.com/example" type = "application/rss+xml" title = "RSS" >
< link rel = "alternate" href = "https://example.com/feed.atom" type = "application/atom+xml" title = "Atom 0.3" >
2016-04-24 07:02:49 +02:00
<!-- Prefetching, preloading, prebrowsing -->
< link rel = "dns-prefetch" href = "//example.com/" >
< link rel = "preconnect" href = "https://www.example.com/" >
< link rel = "prefetch" href = "https://www.example.com/" >
< link rel = "prerender" href = "https://example.com/" >
2016-07-20 10:48:35 +02:00
< link rel = "preload" href = "image.png" as = "image" >
2016-04-24 07:27:08 +02:00
<!-- More info: https://css - tricks.com/prefetching - preloading - prebrowsing/ -->
2016-04-20 22:08:36 +02:00
```
2016-06-04 01:07:21 +02:00
### Link: Not Recommended
2016-05-23 21:53:31 +02:00
Below are the link relations which are not recommended for use:
2016-05-07 17:24:43 +02:00
```html
< link rel = "shortcut icon" href = "path/to/favicon.ico" >
2016-07-15 19:21:37 +02:00
<!-- Not useful, proprietary and buggy, see https://groups.google.com/a/chromium.org/forum/#!msg/blink - dev/Y_2eFRh9BOs/gULYapoRBwAJ -->
< link rel = "subresource" href = "styles.css" >
2016-05-07 17:24:43 +02:00
```
2016-04-20 22:08:36 +02:00
### Favicons
``` html
2016-05-04 16:15:56 +02:00
<!-- For IE 10 and below -->
2016-04-20 22:08:36 +02:00
<!-- No link, just place a file called favicon.ico in the root directory -->
2016-05-04 16:15:56 +02:00
<!-- For IE 11, Chrome, Firefox, Safari, Opera -->
2016-04-23 04:55:13 +02:00
< link rel = "icon" href = "path/to/favicon-16.png" sizes = "16x16" type = "image/png" >
< link rel = "icon" href = "path/to/favicon-32.png" sizes = "32x32" type = "image/png" >
< link rel = "icon" href = "path/to/favicon-48.png" sizes = "48x48" type = "image/png" >
2016-04-20 22:08:36 +02:00
< link rel = "icon" href = "path/to/favicon-62.png" sizes = "62x62" type = "image/png" >
2016-05-25 04:24:26 +02:00
< link rel = "icon" href = "path/to/favicon-192.png" sizes = "192x192" type = "image/png" >
2016-04-20 22:08:36 +02:00
<!-- More info: https://bitsofco.de/all - about - favicons - and - touch - icons/ -->
```
2016-04-27 01:24:25 +02:00
- [All About Favicons (And Touch Icons) ](https://bitsofco.de/all-about-favicons-and-touch-icons/ )
2016-06-03 00:29:26 +02:00
- [Favicon Cheat Sheet ](https://github.com/audreyr/favicon-cheat-sheet )
2016-04-20 22:08:36 +02:00
## Social
### Facebook / Open Graph
``` html
2016-04-24 18:29:54 +02:00
< meta property = "fb:app_id" content = "123456789" >
< meta property = "og:url" content = "https://example.com/page.html" >
< meta property = "og:type" content = "website" >
2016-04-20 22:08:36 +02:00
< meta property = "og:title" content = "Content Title" >
2016-04-24 18:29:54 +02:00
< meta property = "og:image" content = "https://example.com/image.jpg" >
2016-04-20 22:08:36 +02:00
< meta property = "og:description" content = "Description Here" >
< meta property = "og:site_name" content = "Site Name" >
< meta property = "og:locale" content = "en_US" >
2016-04-24 18:29:54 +02:00
< meta property = "article:author" content = "" >
2016-04-20 22:08:36 +02:00
<!-- Facebook: https://developers.facebook.com/docs/sharing/webmasters#markup -->
<!-- Open Graph: http://ogp.me/ -->
```
2016-04-27 01:24:25 +02:00
- [Facebook Open Graph Markup ](https://developers.facebook.com/docs/sharing/webmasters#markup )
- [Open Graph protocol ](http://ogp.me/ )
2016-04-20 22:08:36 +02:00
2016-05-21 03:31:22 +02:00
### Facebook / Instant Articles
2016-05-24 01:53:50 +02:00
``` html
2016-05-21 03:31:22 +02:00
< meta charset = "utf-8" >
< meta property = "op:markup_version" content = "v1.0" >
2016-05-24 01:53:50 +02:00
<!-- The URL of the web version of your article -->
2016-05-21 03:31:22 +02:00
< link rel = "canonical" href = "http://example.com/article.html" >
2016-05-24 01:53:50 +02:00
<!-- The style to be used for this article -->
2016-05-21 03:31:22 +02:00
< meta property = "fb:article_style" content = "myarticlestyle" >
```
- [Facebook Instant Articles: Creating Articles ](https://developers.facebook.com/docs/instant-articles/guides/articlecreate )
2016-05-27 17:43:12 +02:00
- [Instant Articles: Format Reference ](https://developers.facebook.com/docs/instant-articles/reference )
2016-05-21 03:31:22 +02:00
2016-04-20 22:08:36 +02:00
### Twitter
``` html
2016-04-24 18:25:45 +02:00
< meta name = "twitter:card" content = "summary" >
< meta name = "twitter:site" content = "@site_account" >
< meta name = "twitter:creator" content = "@individual_account" >
2016-04-24 18:32:08 +02:00
< meta name = "twitter:url" content = "https://example.com/page.html" >
2016-04-20 22:08:36 +02:00
< meta name = "twitter:title" content = "Content Title" >
< meta name = "twitter:description" content = "Content description less than 200 characters" >
< meta name = "twitter:image" content = "https://example.com/image.jpg" >
<!-- More info: https://dev.twitter.com/cards/getting - started -->
<!-- Validate: https://dev.twitter.com/docs/cards/validation/validator -->
```
2016-04-27 01:24:25 +02:00
- [Twitter Cards: Getting Started Guide ](https://dev.twitter.com/cards/getting-started )
- [Twitter Card Validator ](https://dev.twitter.com/docs/cards/validation/validator )
2016-04-20 22:08:36 +02:00
### Google+ / Schema.org
``` html
2016-05-03 19:14:13 +02:00
< link href = "https://plus.google.com/+YourPage" rel = "publisher" >
2016-04-20 22:08:36 +02:00
< meta itemprop = "name" content = "Content Title" >
< meta itemprop = "description" content = "Content description less than 200 characters" >
< meta itemprop = "image" content = "https://example.com/image.jpg" >
```
2016-05-27 20:02:33 +02:00
### OEmbed
``` html
< link rel = "alternate" type = "application/json+oembed"
href="http://example.com/services/oembed?url=http%3A%2F%2Fexample.com%2Ffoo%2F& format=json"
title="oEmbed Profile: JSON">
< link rel = "alternate" type = "text/xml+oembed"
href="http://example.com/services/oembed?url=http%3A%2F%2Fexample.com%2Ffoo%2F& format=xml"
title="oEmbed Profile: XML">
```
- [oEmbed format ](http://oembed.com/ )
2016-06-04 01:40:21 +02:00
## Browsers / Platforms
2016-04-22 18:01:29 +02:00
2016-04-22 11:31:26 +02:00
### Apple iOS
2016-04-20 22:08:36 +02:00
``` html
2016-04-24 18:07:46 +02:00
<!-- Smart App Banner -->
< meta name = "apple-itunes-app" content = "app-id=APP_ID,affiliate-data=AFFILIATE_ID,app-argument=SOME_TEXT" >
<!-- Disable automatic detection and formatting of possible phone numbers -->
2016-04-20 22:08:36 +02:00
< meta name = "format-detection" content = "telephone=no" >
2016-04-24 18:07:46 +02:00
<!-- Add to Home Screen -->
2016-04-20 22:08:36 +02:00
< meta name = "apple-mobile-web-app-capable" content = "yes" >
< meta name = "apple-mobile-web-app-status-bar-style" content = "black" >
2016-04-24 18:07:46 +02:00
< meta name = "apple-mobile-web-app-title" content = "App Title" >
<!-- Touch Icons -->
2016-05-30 08:58:26 +02:00
< link rel = "apple-touch-icon" href = "path/to/apple-touch-icon.png" >
< link rel = "apple-touch-icon-precomposed" href = "path/to/apple-touch-icon-precomposed.png" >
2016-08-13 00:57:57 +02:00
<!-- iOS 8+ no longer support precomposed, only apple - touch - icon is required -->
2016-04-24 18:07:46 +02:00
2016-08-12 05:42:12 +02:00
<!-- In most cases, one 180× 180px touch icon in the head is enough -->
2016-08-13 00:57:57 +02:00
<!-- Utilize the different icon sizes if you would want unique icons -->
<!-- determined by device. -->
2016-08-12 09:01:21 +02:00
< link rel = "apple-touch-icon" sizes = "57x57" href = "path/to/icon@57.png" >
< link rel = "apple-touch-icon" sizes = "72x72" href = "path/to/icon@72.png" >
< link rel = "apple-touch-icon" sizes = "114x114" href = "path/to/icon@114.png" >
< link rel = "apple-touch-icon" sizes = "144x144" href = "path/to/icon@144.png" >
2016-08-12 05:42:12 +02:00
2016-08-13 00:57:57 +02:00
<!-- Startup Image ( Deprecated ) -->
2016-05-30 08:58:26 +02:00
< link rel = "apple-touch-startup-image" href = "path/to/startup.png" >
2016-09-14 14:16:26 +02:00
<!-- iOS app deep linking -->
< meta name = "apple-itunes-app" content = "app-id=APP-ID, app-argument=http/url-sample.com" >
< link rel = "alternate" href = "ios-app://APP-ID/http/url-sample.com" >
2016-04-20 22:08:36 +02:00
```
2016-04-27 01:24:25 +02:00
- [Apple Meta Tags ](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html )
2016-04-20 22:08:36 +02:00
2016-04-24 17:37:55 +02:00
### Apple Safari
```html
<!-- Pinned Site -->
2016-05-30 08:58:26 +02:00
< link rel = "mask-icon" href = "path/to/icon.svg" color = "red" >
2016-04-24 17:37:55 +02:00
```
### Google Android
``` html
< meta name = "theme-color" content = "#E64545" >
2016-04-24 18:14:19 +02:00
2016-08-13 00:57:57 +02:00
<!-- Add to home screen -->
2016-04-24 18:14:19 +02:00
< meta name = "mobile-web-app-capable" content = "yes" >
2016-04-24 18:19:17 +02:00
<!-- More info: https://developer.chrome.com/multidevice/android/installtohomescreen -->
2016-09-14 14:16:26 +02:00
<!-- Android app deep linking -->
< meta name = "google-play-app" content = "app-id=package-name" >
< link rel = "alternate" href = "android-app://package-name/http/url-sample.com" >
2016-04-24 17:37:55 +02:00
```
2016-04-24 17:41:51 +02:00
### Google Chrome
``` html
< link rel = "chrome-webstore-item" href = "https://chrome.google.com/webstore/detail/APP_ID" >
2016-04-24 18:38:06 +02:00
<!-- Disable translation prompt -->
< meta name = "google" value = "notranslate" >
2016-04-24 17:41:51 +02:00
```
2016-08-12 08:56:15 +02:00
### Google Chrome Mobile (Android Only)
2016-04-24 17:41:51 +02:00
2016-08-12 08:56:15 +02:00
Since Chrome 31, you can set up your web app to "app mode" like Safari.
``` html
2016-08-12 08:59:36 +02:00
<!-- Link to a manifest and define the manifest metadata. -->
<!-- The example of manifest.json could be found in the link below. -->
2016-08-12 08:56:15 +02:00
< link rel = "manifest" href = "manifest.json" >
2016-08-13 00:57:57 +02:00
<!-- Define your web page as a web app -->
2016-08-12 08:56:15 +02:00
< meta name = "mobile-web-app-capable" content = "yes" >
2016-08-13 00:57:57 +02:00
<!-- The first one is the official recommended format. -->
2016-08-12 08:56:15 +02:00
< link rel = "icon" sizes = "192x192" href = "nice-highres.png" >
< link rel = "icon" sizes = "128x128" href = "niceicon.png" >
2016-08-13 00:57:57 +02:00
<!-- Formats with Apple prefix will be deprecated. -->
2016-08-12 08:56:15 +02:00
< link rel = "apple-touch-icon" sizes = "128x128" href = "niceicon.png" >
< link rel = "apple-touch-icon-precomposed" sizes = "128x128" href = "niceicon.png" >
```
2016-08-12 05:42:12 +02:00
2016-08-12 05:47:15 +02:00
[Google Developer ](https://developer.chrome.com/multidevice/android/installtohomescreen )
2016-08-12 05:42:12 +02:00
2016-04-24 17:37:55 +02:00
### Microsoft Internet Explorer
2016-04-20 22:08:36 +02:00
``` html
< meta http-equiv = "x-ua-compatible" content = "ie=edge" >
< meta http-equiv = "cleartype" content = "on" >
2016-04-22 19:44:16 +02:00
< meta name = "skype_toolbar" content = "skype_toolbar_parser_compatible" >
2016-04-20 22:08:36 +02:00
2016-05-19 16:17:48 +02:00
<!-- Disable link highlighting on IE 10 on Windows Phone (https://blogs.windows.com/buildingapps/2012/11/15/adapting - your - webkit - optimized - site - for - internet - explorer - 10/) -->
< meta name = "msapplication-tap-highlight" content = "no" >
2016-05-19 16:09:18 +02:00
<!-- Pinned sites (https://msdn.microsoft.com/en - us/library/dn255024(v=vs.85).aspx) -->
< meta name = "application-name" content = "Contoso Pinned Site Caption" >
< meta name = "msapplication-tooltip" content = "Example Tooltip Text" >
< meta name = "msapplication-starturl" content = "/" >
< meta name = "msapplication-config" content = "http://example.com/browserconfig.xml" >
< meta name = "msapplication-allowDomainApiCalls" content = "true" >
< meta name = "msapplication-allowDomainMetaTags" content = "true" >
< meta name = "msapplication-badge" content = "frequency=30; polling-uri=http://example.com/id45453245/polling.xml" >
< meta name = "msapplication-navbutton-color" content = "#FF3300" >
< meta name = "msapplication-notification" content = "frequency=60;polling-uri=http://example.com/livetile" >
2016-05-30 08:58:26 +02:00
< meta name = "msapplication-square150x150logo" content = "path/to/logo.png" >
< meta name = "msapplication-square310x310logo" content = "path/to/largelogo.png" >
< meta name = "msapplication-square70x70logo" content = "path/to/tinylogo.png" >
< meta name = "msapplication-wide310x150logo" content = "path/to/widelogo.png" >
2016-05-19 16:09:18 +02:00
< meta name = "msapplication-task" content = "name=Check Order Status;action-uri=./orderStatus.aspx?src=IE9;icon-uri=./favicon.ico" >
2016-08-11 16:22:56 +02:00
< meta name = "msapplication-task-separator" content = "1" >
2016-05-19 16:09:18 +02:00
< meta name = "msapplication-TileColor" content = "#FF3300" >
2016-05-30 08:58:26 +02:00
< meta name = "msapplication-TileImage" content = "path/to/tileimage.jpg" >
2016-05-19 16:09:18 +02:00
< meta name = "msapplication-window" content = "width=1024;height=768" >
2016-04-20 22:08:36 +02:00
```
2016-05-31 03:52:14 +02:00
### Microsoft Internet Explorer: Legacy, Do Not Use!
2016-04-20 22:08:36 +02:00
``` html
2016-05-19 16:09:18 +02:00
<!-- Disable the image toolbar when you mouse over images in IE 6 (https://msdn.microsoft.com/en - us/library/ms532986(v=vs.85).aspx) -->
< meta http-equiv = "imagetoolbar" content = "no" >
<!-- Disable Windows theming to form inputs/buttons (https://support.microsoft.com/en - us/kb/322240) -->
< meta name = "MSThemeCompatible" content = "no" >
<!-- Disable a feature that only appeared on IE 6 beta (https://stackoverflow.com/q/2167301) -->
< meta name = "MSSmartTagsPreventParsing" content = "true" >
<!-- Interpage Transitions (https://msdn.microsoft.com/en - us/library/ms532847(v=vs.85).aspx) -->
< meta http-equiv = "Page-Enter" content = "revealtrans(duration=2,transition=2)" >
< meta http-equiv = "Page-Exit" content = "revealtrans(duration=3,transition=12)" >
< meta http-equiv = "Site-Enter" content = "revealtrans(duration=2,transition=2)" >
< meta http-equiv = "Site-Exit" content = "revealtrans(duration=3,transition=12)" >
2016-04-20 22:08:36 +02:00
```
2016-06-04 01:40:21 +02:00
## App Links
``` html
<!-- iOS -->
< meta property = "al:ios:url" content = "applinks://docs" >
< meta property = "al:ios:app_store_id" content = "12345" >
< meta property = "al:ios:app_name" content = "App Links" >
<!-- Android -->
< meta property = "al:android:url" content = "applinks://docs" >
< meta property = "al:android:app_name" content = "App Links" >
< meta property = "al:android:package" content = "org.applinks" >
<!-- Web Fallback -->
< meta property = "al:web:url" content = "http://applinks.org/documentation" >
<!-- More info: http://applinks.org/documentation/ -->
```
- [App Links Docs ](http://applinks.org/documentation/ )
## Browsers (Chinese)
2016-04-27 06:00:59 +02:00
### 360 Browser
``` html
<!-- select rendering engine in order -->
< meta name = "renderer" content = "webkit|ie-comp|ie-stand" >
```
2016-06-04 01:40:21 +02:00
### QQ Mobile Browser
``` html
<!-- Locks the screen into the specified orientation -->
< meta name = "x5-orientation" content = "landscape/portrait" >
<!-- Display this page in fullscreen -->
< meta name = "x5-fullscreen" content = "true" >
<!-- Page will be displayed in "application mode"(fullscreen,etc.) -->
< meta name = "x5-page-mode" content = "app" >
```
2016-04-29 10:58:45 +02:00
### UC Mobile Browser
``` html
<!-- Locks the screen into the specified orientation -->
< meta name = "screen-orientation" content = "landscape/portrait" >
<!-- Display this page in fullscreen -->
< meta name = "full-screen" content = "yes" >
<!-- UC browser will display images even if in "text mode" -->
< meta name = "imagemode" content = "force" >
2016-05-16 12:52:51 +02:00
<!-- Page will be displayed in "application mode"(fullscreen,forbiding gesture, etc.) -->
2016-04-29 10:58:45 +02:00
< meta name = "browsermode" content = "application" >
<!-- Disabled the UC browser's "night mode" in this page -->
< meta name = "nightmode" content = "disable" >
<!-- Simplify the page to reduce data transfer -->
< meta name = "layoutmode" content = "fitscreen" >
<!-- Disable the UC browser's feature of "scaling font up when there are many words in this page" -->
2016-05-03 16:35:55 +02:00
< meta name = "wap-font-scale" content = "no" >
2016-04-29 10:58:45 +02:00
```
- [UC Browser Docs ](http://www.uc.cn/download/UCBrowser_U3_API.doc )
2016-05-28 23:26:29 +02:00
## Notes
### Performance
Moving the `href` attribute to the beginning of an element improves compression when GZIP is enabled, because the `href` attribute is used in `a` , `base` and `link` tags.
Example:
2016-06-17 00:24:34 +02:00
2016-06-03 01:12:21 +02:00
``` html
2016-05-28 23:26:29 +02:00
< link href = "https://fonts.googleapis.com/css?family=Open+Sans:400,700" rel = "stylesheet" >
```
2016-04-20 22:08:36 +02:00
## Other Resources
- [HTML5 Boilerplate Docs: The HTML ](https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/html.md )
2016-04-24 18:08:56 +02:00
- [HTML5 Boilerplate Docs: Extend and customize ](https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/extend.md )
2016-04-20 22:08:36 +02:00
2016-05-31 20:26:33 +02:00
## Related Projects
2016-06-08 16:15:30 +02:00
- [Atom HTML Head Snippets ](https://github.com/joshbuchea/atom-html-head-snippets ) - Atom package for `HEAD` snippets
- [Sublime Text HTML Head Snippets ](https://github.com/marcobiedermann/sublime-head-snippets ) - Sublime Text package for `HEAD` snippets
2016-06-02 03:01:54 +02:00
- [head-it ](https://github.com/hemanth/head-it ) - CLI interface for `HEAD` snippets
2016-06-06 03:08:53 +02:00
- [vue-head ](https://github.com/ktquez/vue-head ) - Manipulating the meta information of the `HEAD` tag for Vue.js
2016-05-31 20:26:33 +02:00
2016-06-10 19:14:43 +02:00
## Other Formats
- [PDF ](https://gitprint.com/joshbuchea/HEAD/blob/master/README.md )
2016-06-02 18:50:50 +02:00
## Translations
2016-07-04 08:52:57 +02:00
- [Brazilian Portuguese ](https://github.com/Webschool-io/HEAD )
2016-08-04 19:42:39 +02:00
- [Chinese (Simplified) ](https://github.com/Amery2010/HEAD )
2016-08-23 21:07:35 +02:00
- [Italian ](https://github.com/Fakkio/HEAD )
2016-06-02 18:50:50 +02:00
- [Japanese ](http://coliss.com/articles/build-websites/operation/work/collection-of-html-head-elements.html )
2016-06-06 03:52:00 +02:00
- [Russian/Русский ](https://github.com/Konfuze/HEAD )
2016-06-02 18:50:50 +02:00
2016-04-20 22:08:36 +02:00
## Contributing
Open an issue or a pull request to suggest changes or additions.
2016-05-27 21:23:17 +02:00
Please follow these steps for pull requests:
2016-07-15 19:24:46 +02:00
2016-05-27 21:23:17 +02:00
- Modify only one tag, or one related set of tags at a time
- Use double quotes on attributes
- Don't include a trailing slash in self-closing elements — the HTML5 spec says they're optional
- Consider including a link to documentation that supports your change
2016-06-02 20:58:56 +02:00
### Contributors
Check out all the super awesome [contributors ](https://github.com/joshbuchea/HEAD/graphs/contributors ).
2016-04-26 22:34:17 +02:00
## Author
2016-05-24 00:07:58 +02:00
**[Josh Buchea](http://joshbuchea.com/)**
2016-04-26 22:34:17 +02:00
2016-04-20 22:08:36 +02:00
## License
2016-11-14 00:33:35 +01:00
[![CC0 ](http://i.creativecommons.org/p/zero/1.0/88x31.png )](http://creativecommons.org/publicdomain/zero/1.0/)
2016-05-30 09:23:39 +02:00
2016-11-14 00:33:35 +01:00
To the extent possible under law, [Josh Buchea ](http://joshbuchea.com ) has waived all copyright and related or neighboring rights to this work.