2017-10-23 20:14:59 +02:00
# HEAD
2016-04-20 22:08:36 +02:00
2017-06-22 04:03:13 +02:00
[![CC0 ](https://img.shields.io/badge/license-CC0-green.svg )](https://creativecommons.org/publicdomain/zero/1.0/)
2017-06-22 04:22:20 +02:00
[![Contributors ](https://img.shields.io/github/contributors/joshbuchea/head.svg )](https://github.com/joshbuchea/HEAD/graphs/contributors)
2017-06-22 04:03:13 +02:00
2017-10-28 01:51:53 +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 )
- [Link ](#link )
2018-01-29 01:56:05 +01:00
- [Icons ](#icons )
2016-05-31 03:52:14 +02:00
- [Social ](#social )
2017-10-28 22:02:47 +02:00
- [Facebook Open Graph ](#facebook-open-graph )
2017-10-28 22:04:05 +02:00
- [Twitter Card ](#twitter-card )
2017-12-22 02:48:35 +01:00
- [Twitter Privacy ](#twitter-privacy )
2016-05-31 16:04:29 +02:00
- [Google+ / Schema.org ](#google--schemaorg )
2018-01-21 20:41:26 +01:00
- [Pinterest ](#pinterest )
2017-10-29 02:04:24 +02:00
- [Facebook Instant Articles ](#facebook-instant-articles )
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 )
- [Google Android ](#google-android )
- [Google Chrome ](#google-chrome )
- [Microsoft Internet Explorer ](#microsoft-internet-explorer )
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 )
- [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 )
2017-10-28 21:18:47 +02:00
- [Contributors ](#contributors )
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
2017-12-21 18:03:25 +01:00
Below are the essential elements for any web document (websites/apps):
2016-05-24 06:20:47 +02:00
```html
< meta charset = "utf-8" >
2017-04-25 14:10:43 +02:00
< meta name = "viewport" content = "width=device-width, initial-scale=1, shrink-to-fit=no" >
2018-02-04 09:40:03 +01:00
<!--
2018-03-18 07:30:14 +01:00
The above 2 meta tags *must* come first in the < head >
2017-12-21 18:03:25 +01:00
to consistently ensure proper document rendering.
Any other head element should come *after* these tags.
2017-10-29 18:40:50 +01:00
-->
2016-05-24 06:20:47 +02:00
< title > Page Title< / title >
```
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2016-04-21 20:58:43 +02:00
## Elements
2017-10-28 21:19:57 +02:00
Valid `<head>` elements include `meta` , `link` , `title` , `style` , `script` , `noscript` , and `base` .
2017-12-21 18:03:25 +01:00
These elements provide information for how a document should be perceived, and rendered, by web technologies. e.g. browsers, search engines, bots, etc.
2018-02-04 20:39:30 +01:00
```html
2018-01-21 19:24:35 +01:00
<!--
Set the character encoding for this document, so that
all characters within the UTF-8 space (such as emoji)
2017-12-21 18:03:25 +01:00
are rendered correctly.
-->
2017-10-28 22:01:18 +02:00
< meta charset = "utf-8" >
2017-10-29 18:40:50 +01:00
<!-- Set the document's title -->
2016-04-21 20:58:43 +02:00
< title > Page Title< / title >
2016-05-30 07:31:48 +02:00
2017-12-21 18:03:25 +01:00
<!-- Set the base URL for all relative URLs within the document -->
2018-09-04 20:18:24 +02:00
< base href = "https://example.com/page.html" >
2016-05-30 07:31:48 +02:00
2017-12-21 18:03:25 +01:00
<!-- Link to an external CSS file -->
2016-05-30 07:33:24 +02:00
< link rel = "stylesheet" href = "styles.css" >
2016-05-30 07:31:48 +02:00
2017-10-29 18:40:50 +01:00
<!-- Used for adding 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
2017-10-29 18:40:50 +01:00
<!-- JavaScript & No - JavaScript tags -->
2016-04-21 20:58:43 +02:00
< script src = "script.js" > < / script >
2017-10-29 18:40:50 +01:00
< script >
// function(s) go here
< / script >
< noscript >
<!-- No JS alternative -->
< / noscript >
2016-04-21 20:58:43 +02:00
```
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2016-06-04 01:07:21 +02:00
## Meta
2016-04-20 22:08:36 +02:00
2018-02-04 20:39:30 +01:00
```html
2018-01-21 19:24:35 +01:00
<!--
2018-03-18 07:30:14 +01:00
The following 2 meta tags *must* come first in the < head >
2017-12-21 18:03:25 +01:00
to consistently ensure proper document rendering.
Any other head element should come *after* these tags.
-->
2018-01-21 19:24:35 +01:00
< meta charset = "utf-8" >
2016-05-09 17:21:47 +02:00
< meta name = "viewport" content = "width=device-width, initial-scale=1, shrink-to-fit=no" >
2016-05-31 20:59:14 +02:00
2018-01-21 19:24:35 +01:00
<!--
2017-12-21 18:03:25 +01:00
Allows control over where resources are loaded from.
Place as early in the < head > as possible, as the tag
2018-01-21 19:24:35 +01:00
only applies to resources that are declared after it.
2017-12-21 18:03:25 +01:00
-->
2016-06-04 02:06:28 +02:00
< meta http-equiv = "Content-Security-Policy" content = "default-src 'self'" >
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
2018-01-22 05:38:49 +01:00
<!-- Theme Color for Chrome, Firefox OS and Opera -->
< meta name = "theme-color" content = "#4285f4" >
2017-10-29 18:40:50 +01:00
<!-- Short description of the document (limit to 150 characters) -->
2017-12-21 18:03:25 +01:00
<!-- This content *may* be used as a part of search engine results. -->
2016-06-04 01:33:34 +02:00
< 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 -->
2017-05-16 07:24:32 +02:00
< meta name = "robots" content = "index,follow" > <!-- All Search Engines -->
2016-06-04 01:33:34 +02:00
< 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
2017-10-29 18:40:50 +01:00
<!-- Tells Google not to provide a translation for this document -->
2016-06-04 01:33:34 +02:00
< meta name = "google" content = "notranslate" >
2017-10-29 18:40:50 +01:00
<!-- Verify website ownership -->
2017-10-28 20:45:06 +02:00
< meta name = "google-site-verification" content = "verification_token" > <!-- Google Search Console -->
< meta name = "yandex-verification" content = "verification_token" > <!-- Yandex Webmasters -->
< meta name = "msvalidate.01" content = "verification_token" > <!-- Bing Webmaster Center -->
< meta name = "alexaVerifyID" content = "verification_token" > <!-- Alexa Console -->
< meta name = "p:domain_verify" content = "code_from_pinterest" > <!-- Pinterest Console -->
< meta name = "norton-safeweb-site-verification" content = "norton_code" > <!-- Norton Safe Web -->
2017-02-13 12:29:33 +01:00
2017-10-29 18:40:50 +01:00
<!-- Identify the software used to build the document (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
2017-10-29 18:40:50 +01:00
<!-- Short description of your document's subject -->
< meta name = "subject" content = "your document's subject" >
2016-06-04 01:33:34 +02:00
2017-10-29 18:40:50 +01:00
<!-- Gives a general age rating based on the document's 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" >
2017-10-29 18:40:50 +01:00
<!-- Completely opt out of DNS prefetching by setting to "off" -->
2016-07-07 00:05:20 +02:00
< meta http-equiv = "x-dns-prefetch-control" content = "off" >
2017-10-29 18:40:50 +01:00
<!-- Stores a cookie on the client web browser for identification purposes -->
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
2017-10-29 18:40:50 +01:00
<!-- Specifies the document to appear in a specific frame -->
2016-07-10 16:26:49 +02:00
< 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
```
2017-10-29 02:31:28 +02:00
- 📖 [Meta tags that Google understands ](https://support.google.com/webmasters/answer/79812?hl=en )
- 📖 [WHATWG Wiki: MetaExtensions ](https://wiki.whatwg.org/wiki/MetaExtensions )
- 📖 [ICBM on Wikipedia ](https://en.wikipedia.org/wiki/ICBM_address#Modern_use )
- 📖 [Geotagging on Wikipedia ](https://en.wikipedia.org/wiki/Geotagging#HTML_pages )
2016-05-27 17:43:12 +02:00
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2016-04-20 22:08:36 +02:00
2016-06-04 01:07:21 +02:00
## Link
2016-04-20 22:08:36 +02:00
2018-02-04 20:39:30 +01:00
```html
2017-12-21 18:03:25 +01:00
<!-- Points to an external stylesheet -->
2018-09-04 19:48:22 +02:00
< link rel = "stylesheet" href = "https://example.com/styles.css" >
2017-04-24 20:51:32 +02:00
2016-06-08 04:31:42 +02:00
<!-- Helps prevent duplicate content issues -->
2018-09-04 19:48:22 +02:00
< link rel = "canonical" href = "https://example.com/article/?page=2" >
2016-06-08 04:31:42 +02:00
<!-- Links to an AMP HTML version of the current document -->
2018-09-04 19:48:22 +02:00
< link rel = "amphtml" href = "https://example.com/path/to/amp-version.html" >
2016-06-08 04:31:42 +02:00
2017-10-29 18:40:50 +01:00
<!-- Links to a JSON file that specifies "installation" credentials for the web applications -->
2016-06-04 02:28:12 +02:00
< link rel = "manifest" href = "manifest.json" >
2016-06-08 04:31:42 +02:00
2017-10-29 18:40:50 +01:00
<!-- Links to information about the author(s) 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
2017-10-29 18:40:50 +01:00
<!-- Refers to a copyright statement that applies to the link's context -->
2017-05-29 11:11:46 +02:00
< link rel = "license" 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
2017-10-29 18:40:50 +01:00
<!-- Provides 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
2017-10-29 18:40:50 +01:00
<!-- Links to a document that describes a collection of records, documents, or other materials of historical interest -->
2018-09-04 19:48:22 +02:00
< link rel = "archives" href = "https://example.com/archives/" >
2016-06-08 04:31:42 +02:00
<!-- Links to top level resource in an hierarchical structure -->
2018-09-04 19:48:22 +02:00
< link rel = "index" href = "https://example.com/article/" >
2016-06-08 04:31:42 +02:00
2017-10-29 18:40:50 +01:00
<!-- Provides a self reference - useful when the document has multiple possible references -->
2018-09-04 19:48:22 +02:00
< link rel = "self" type = "application/atom+xml" href = "https://example.com/atom.xml" >
2016-06-08 04:31:42 +02:00
2018-02-04 11:43:19 +01:00
<!-- The first, last, previous, and next documents in a series of documents, respectively -->
2018-09-04 19:48:22 +02:00
< link rel = "first" href = "https://example.com/article/" >
< link rel = "last" href = "https://example.com/article/?page=42" >
< link rel = "prev" href = "https://example.com/article/?page=1" >
2018-09-04 20:18:24 +02:00
< link rel = "next" href = "https://example.com/article/?page=3" >
2016-06-08 04:31:42 +02:00
2017-10-29 18:40:50 +01:00
<!-- Used when a 3rd party service is utilized to maintain a blog -->
2018-09-04 19:48:22 +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 -->
2018-09-04 19:48:22 +02:00
< link rel = "pingback" href = "https://example.com/xmlrpc.php" >
2016-06-08 04:31:42 +02:00
2017-10-29 18:40:50 +01:00
<!-- Notifies a URL when you link to it on your document -->
2018-09-04 19:48:22 +02:00
< link rel = "webmention" href = "https://example.com/webmention" >
2016-06-08 04:31:42 +02:00
2017-10-25 19:53:51 +02:00
<!-- Enables posting to your own domain using a Micropub client -->
2018-09-04 19:48:22 +02:00
< link rel = "micropub" href = "https://example.com/micropub" >
2017-10-25 19:53:51 +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" >
2018-09-04 19:48:22 +02:00
< link rel = "alternate" href = "https://example.com/feed.atom" type = "application/atom+xml" title = "Atom 0.3" >
2016-06-04 02:28:12 +02:00
2016-04-24 07:02:49 +02:00
<!-- Prefetching, preloading, prebrowsing -->
2017-12-21 18:03:25 +01:00
<!-- More info: https://css - tricks.com/prefetching - preloading - prebrowsing/ -->
2016-04-24 07:02:49 +02:00
< link rel = "dns-prefetch" href = "//example.com/" >
< link rel = "preconnect" href = "https://www.example.com/" >
< link rel = "prefetch" href = "https://www.example.com/" >
2018-09-04 19:48:22 +02:00
< 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-20 22:08:36 +02:00
```
2018-02-04 12:03:13 +01:00
- 📖 [Link Relations ](https://www.iana.org/assignments/link-relations/link-relations.xhtml )
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2018-01-29 01:56:05 +01:00
## Icons
2016-04-20 22:08:36 +02:00
2018-02-04 20:39:30 +01:00
```html
2016-05-04 16:15:56 +02:00
<!-- For IE 10 and below -->
2017-04-25 18:51:57 +02:00
<!-- Place favicon.ico in the root directory - no tag necessary -->
2016-04-20 22:08:36 +02:00
2018-01-29 01:56:05 +01:00
<!-- Icon in the highest resolution we need it for -->
< link rel = "icon" sizes = "192x192" href = "/path/to/icon.png" >
<!-- Apple Touch Icon (reuse 192px icon.png) -->
< link rel = "apple-touch-icon" href = "/path/to/apple-touch-icon.png" >
2018-02-04 05:05:21 +01:00
<!-- Safari Pinned Tab Icon -->
2018-01-29 01:56:05 +01:00
< link rel = "mask-icon" href = "/path/to/icon.svg" color = "blue" >
2016-04-20 22:08:36 +02:00
```
2017-10-29 02:31:28 +02:00
- 📖 [All About Favicons (And Touch Icons) ](https://bitsofco.de/all-about-favicons-and-touch-icons/ )
2018-02-04 05:05:21 +01:00
- 📖 [Creating Pinned Tab Icons ](https://developer.apple.com/library/content/documentation/AppleApplications/Reference/SafariWebContent/pinnedTabs/pinnedTabs.html )
2017-10-29 02:31:28 +02:00
- 📖 [Favicon Cheat Sheet ](https://github.com/audreyr/favicon-cheat-sheet )
2018-01-29 01:56:05 +01:00
- 📖 [Icons & Browser Colors ](https://developers.google.com/web/fundamentals/design-and-ux/browser-customization/ )
2016-04-20 22:08:36 +02:00
2017-10-29 02:01:02 +02:00
**[⬆ back to top](#table-of-contents)**
2016-04-20 22:08:36 +02:00
## Social
2017-04-24 09:41:37 +02:00
### Facebook Open Graph
2016-04-20 22:08:36 +02:00
2018-02-04 20:39:30 +01:00
```html
2016-04-24 18:29:54 +02:00
< meta property = "fb:app_id" content = "123456789" >
2018-09-04 19:48:22 +02:00
< meta property = "og:url" content = "https://example.com/page.html" >
2016-04-24 18:29:54 +02:00
< meta property = "og:type" content = "website" >
2016-04-20 22:08:36 +02:00
< meta property = "og:title" content = "Content Title" >
2018-09-04 19:48:22 +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
```
2017-10-29 02:31:28 +02:00
- 📖 [Facebook Open Graph Markup ](https://developers.facebook.com/docs/sharing/webmasters#markup )
2018-10-27 07:21:54 +02:00
- 📖 [Open Graph protocol ](http://ogp.me/ )
2017-11-15 18:49:15 +01:00
- 🛠 Test your page with the [Facebook Sharing Debugger ](https://developers.facebook.com/tools/debug/ )
2016-04-20 22:08:36 +02:00
2017-10-28 22:04:05 +02:00
### Twitter Card
2016-04-20 22:08:36 +02:00
2018-02-04 20:39:30 +01:00
```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" >
2018-09-04 19:48:22 +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" >
2018-09-04 19:48:22 +02:00
< meta name = "twitter:image" content = "https://example.com/image.jpg" >
2016-04-20 22:08:36 +02:00
```
2017-10-29 02:31:28 +02:00
- 📖 [Getting started with cards — Twitter Developers ](https://dev.twitter.com/cards/getting-started )
2017-11-15 18:50:34 +01:00
- 🛠 Test your page with the [Twitter Card Validator ](https://cards-dev.twitter.com/validator )
2016-04-20 22:08:36 +02:00
2017-12-22 02:48:35 +01:00
### Twitter Privacy
If you embed tweets in your website, Twitter can use information from your site to tailor content and suggestions to Twitter users. [More about Twitter privacy options ](https://dev.twitter.com/web/overview/privacy#what-privacy-options-do-website-publishers-have ).
2018-02-04 20:39:30 +01:00
```html
2017-12-22 02:48:35 +01:00
<!-- disallow Twitter from using your site's info for personalization purposes -->
< meta name = "twitter:dnt" content = "on" >
```
2016-04-20 22:08:36 +02:00
### Google+ / Schema.org
2018-02-04 20:39:30 +01:00
```html
2018-09-04 19:48:22 +02:00
< html lang = "" itemscope itemtype = "https://schema.org/Article" >
2018-02-04 21:30:26 +01:00
< head >
< link rel = "author" href = "" >
< link rel = "publisher" href = "" >
< meta itemprop = "name" content = "Content Title" >
< meta itemprop = "description" content = "Content description less than 200 characters" >
2018-09-04 19:48:22 +02:00
< meta itemprop = "image" content = "https://example.com/image.jpg" >
2016-04-20 22:08:36 +02:00
```
2018-02-04 21:30:26 +01:00
**Note:** This markup requires attributes to be added to your top html tag
- 🛠 Test your page with the [Structured Data Testing Tool ](https://developers.google.com/structured-data/testing-tool/ )
2016-12-01 20:32:16 +01:00
### Pinterest
Pinterest lets you prevent people from saving things from your website, according [to their help center ](https://help.pinterest.com/en/articles/prevent-people-saving-things-pinterest-your-site ). The `description` is optional.
2018-02-04 20:39:30 +01:00
```html
2017-10-29 02:01:25 +01:00
< meta name = "pinterest" content = "nopin" description = "Sorry, you can't save from my website!" >
```
2017-10-29 02:04:24 +02:00
### Facebook Instant Articles
2018-02-04 20:39:30 +01:00
```html
2017-10-29 02:04:24 +02:00
< meta charset = "utf-8" >
< meta property = "op:markup_version" content = "v1.0" >
<!-- The URL of the web version of your article -->
2018-09-04 19:48:22 +02:00
< link rel = "canonical" href = "https://example.com/article.html" >
2017-10-29 02:04:24 +02:00
<!-- The style to be used for this article -->
< meta property = "fb:article_style" content = "myarticlestyle" >
```
2017-10-29 02:31:28 +02:00
- 📖 [Creating Articles - Instant Articles ](https://developers.facebook.com/docs/instant-articles/guides/articlecreate )
- 📖 [Code Samples - Instant Articles ](https://developers.facebook.com/docs/instant-articles/reference )
2017-10-29 02:04:24 +02:00
2016-05-27 20:02:33 +02:00
### OEmbed
2018-02-04 20:39:30 +01:00
```html
2016-05-27 20:02:33 +02:00
< link rel = "alternate" type = "application/json+oembed"
2018-09-04 19:48:22 +02:00
href="https://example.com/services/oembed?url=http%3A%2F%2Fexample.com%2Ffoo%2F& format=json"
2016-05-27 20:02:33 +02:00
title="oEmbed Profile: JSON">
< link rel = "alternate" type = "text/xml+oembed"
2018-09-04 19:48:22 +02:00
href="https://example.com/services/oembed?url=http%3A%2F%2Fexample.com%2Ffoo%2F& format=xml"
2016-05-27 20:02:33 +02:00
title="oEmbed Profile: XML">
```
2018-09-04 19:48:22 +02:00
- 📖 [oEmbed format ](https://oembed.com/ )
2016-05-27 20:02:33 +02:00
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
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
2018-02-04 20:39:30 +01: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
2018-02-04 09:40:03 +01:00
<!-- Launch Icon (180x180px or larger) -->
< link rel = "apple-touch-icon" href = "/path/to/apple-touch-icon.png" >
<!-- Launch Screen Image -->
< link rel = "apple-touch-startup-image" href = "/path/to/launch.png" >
<!-- Launch Icon Title -->
2016-04-24 18:07:46 +02:00
< meta name = "apple-mobile-web-app-title" content = "App Title" >
2018-02-04 09:40:03 +01:00
<!-- Enable standalone (full - screen) mode -->
< meta name = "apple-mobile-web-app-capable" content = "yes" >
2016-08-12 05:42:12 +02:00
2018-02-04 09:40:03 +01:00
<!-- Status bar appearance (has no effect unless standalone mode is enabled) -->
< meta name = "apple-mobile-web-app-status-bar-style" content = "black" >
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
```
2018-02-04 09:40:03 +01:00
- 📖 [Configuring Web Applications ](https://developer.apple.com/library/content/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html )
2016-04-20 22:08:36 +02:00
2016-04-24 17:37:55 +02:00
### Google Android
2018-02-04 20:39:30 +01:00
```html
2016-04-24 17:37:55 +02:00
< 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
2018-02-04 20:39:30 +01:00
```html
2016-04-24 17:41:51 +02:00
< 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 -->
2017-05-29 11:16:50 +02:00
< meta name = "google" content = "notranslate" >
2016-04-24 17:41:51 +02:00
```
2017-07-24 18:46:05 +02:00
2016-04-24 17:37:55 +02:00
### Microsoft Internet Explorer
2016-04-20 22:08:36 +02:00
2018-02-04 20:39:30 +01:00
```html
2018-02-04 11:57:47 +01:00
<!-- Force IE 8/9/10 to use its latest rendering engine -->
2016-04-20 22:08:36 +02:00
< meta http-equiv = "x-ua-compatible" content = "ie=edge" >
2018-02-04 11:57:47 +01:00
<!-- Disable automatic detection and formatting of possible phone numbers by Skype Toolbar browser extension -->
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
2018-03-18 07:45:57 +01:00
<!-- Windows Tiles -->
< meta name = "msapplication-config" content = "/browserconfig.xml" >
```
2018-03-18 08:01:52 +01:00
Minimum required xml markup for `browserconfig.xml` :
2018-03-18 07:45:57 +01:00
```xml
<?xml version="1.0" encoding="utf-8"?>
< browserconfig >
< msapplication >
< tile >
< square70x70logo src = "small.png" / >
< square150x150logo src = "medium.png" / >
< wide310x150logo src = "wide.png" / >
< square310x310logo src = "large.png" / >
< / tile >
< / msapplication >
< / browserconfig >
2016-04-20 22:08:36 +02:00
```
2018-03-18 08:01:52 +01:00
- 📖 [Browser configuration schema reference ](https://msdn.microsoft.com/en-us/library/dn320426.aspx )
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2016-06-04 01:40:21 +02:00
## Browsers (Chinese)
2016-04-27 06:00:59 +02:00
### 360 Browser
2018-02-04 20:39:30 +01:00
```html
2017-10-28 20:55:29 +02:00
<!-- Select rendering engine order -->
2016-04-27 06:00:59 +02:00
< meta name = "renderer" content = "webkit|ie-comp|ie-stand" >
```
2016-06-04 01:40:21 +02:00
### QQ Mobile Browser
2018-02-04 20:39:30 +01:00
```html
2016-06-04 01:40:21 +02:00
<!-- Locks the screen into the specified orientation -->
< meta name = "x5-orientation" content = "landscape/portrait" >
2017-10-29 18:40:50 +01:00
<!-- Display this document in fullscreen -->
2016-06-04 01:40:21 +02:00
< meta name = "x5-fullscreen" content = "true" >
2017-10-29 18:40:50 +01:00
2017-12-21 18:03:25 +01:00
<!-- Document will be displayed in "application mode" (fullscreen, etc.) -->
2016-06-04 01:40:21 +02:00
< meta name = "x5-page-mode" content = "app" >
```
2016-04-29 10:58:45 +02:00
### UC Mobile Browser
2018-02-04 20:39:30 +01:00
```html
2016-04-29 10:58:45 +02:00
<!-- Locks the screen into the specified orientation -->
< meta name = "screen-orientation" content = "landscape/portrait" >
2017-10-29 18:40:50 +01:00
<!-- Display this document in fullscreen -->
2016-04-29 10:58:45 +02:00
< meta name = "full-screen" content = "yes" >
2017-10-29 18:40:50 +01:00
2016-04-29 10:58:45 +02:00
<!-- UC browser will display images even if in "text mode" -->
< meta name = "imagemode" content = "force" >
2017-10-29 18:40:50 +01:00
2017-12-21 18:03:25 +01:00
<!-- Document will be displayed in "application mode"(fullscreen, forbidding gesture, etc.) -->
2016-04-29 10:58:45 +02:00
< meta name = "browsermode" content = "application" >
2017-10-29 18:40:50 +01:00
<!-- Disabled the UC browser's "night mode" for this document -->
2016-04-29 10:58:45 +02:00
< meta name = "nightmode" content = "disable" >
2017-10-29 18:40:50 +01:00
<!-- Simplify the document to reduce data transfer -->
2016-04-29 10:58:45 +02:00
< meta name = "layoutmode" content = "fitscreen" >
2017-10-29 18:40:50 +01:00
<!-- Disable the UC browser's feature of "scaling font up when there are many words in this document" -->
2016-05-03 16:35:55 +02:00
< meta name = "wap-font-scale" content = "no" >
2016-04-29 10:58:45 +02:00
```
2018-09-04 19:48:22 +02:00
- 📖 [UC Browser Docs ](https://www.uc.cn/download/UCBrowser_U3_API.doc )
2016-04-29 10:58:45 +02:00
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2018-01-21 20:41:26 +01:00
## App Links
2018-02-04 20:39:30 +01:00
```html
2018-01-21 20:41:26 +01:00
<!-- 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 fall back -->
2018-09-04 19:48:22 +02:00
< meta property = "al:web:url" content = "https://applinks.org/documentation" >
2018-01-21 20:41:26 +01:00
```
2018-09-04 19:48:22 +02:00
- 📖 [App Links ](https://applinks.org/documentation/ )
2018-01-21 20:41:26 +01:00
**[⬆ back to top](#table-of-contents)**
2016-04-20 22:08:36 +02:00
## Other Resources
2017-10-29 02:31:28 +02:00
- 📖 [HTML5 Boilerplate Docs: The HTML ](https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/html.md )
- 📖 [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
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
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
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2016-06-10 19:14:43 +02:00
## Other Formats
2017-10-29 02:31:28 +02:00
- 📄 [PDF ](https://gitprint.com/joshbuchea/HEAD/blob/master/README.md )
2016-06-10 19:14:43 +02:00
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2016-06-02 18:50:50 +02:00
## Translations
2017-10-28 20:56:26 +02:00
- 🇧🇷 [Brazilian Portuguese ](https://github.com/Webschool-io/HEAD )
- 🇨🇳 [Chinese (Simplified) ](https://github.com/Amery2010/HEAD )
2018-05-03 18:09:39 +02:00
- 🇩🇪 [German ](https://github.com/Shidigital/HEAD )
2017-10-28 20:56:26 +02:00
- 🇮🇹 [Italian ](https://github.com/Fakkio/HEAD )
2018-09-04 19:48:22 +02:00
- 🇯🇵 [Japanese ](https://coliss.com/articles/build-websites/operation/work/collection-of-html-head-elements.html )
2017-10-29 01:46:08 +02:00
- 🇰🇷 [Korean ](https://github.com/Lutece/HEAD )
2017-10-28 20:56:26 +02:00
- 🇷🇺 [Russian/Русский ](https://github.com/Konfuze/HEAD )
2018-04-07 17:23:34 +02:00
- 🇪🇸 [Spanish ](https://github.com/alvaroadlf/HEAD )
2017-10-28 20:56:26 +02:00
- 🇹🇷 [Turkish/Türkçe ](https://github.com/mkg0/HEAD )
2016-06-02 18:50:50 +02:00
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**
2016-04-20 22:08:36 +02:00
## Contributing
2017-03-08 13:53:58 +01:00
**Open an issue or a pull request to suggest changes or additions.**
### Guide
The **HEAD** repository consists of two branches:
#### 1. `master`
2017-10-29 03:50:57 +01:00
This branch consists of the `README.md` file that is automatically reflected on the [gethead.info ](https://gethead.info/ ) website. All changes to the content of the cheat sheet as such should be directed to this file.
2016-04-20 22:08:36 +02:00
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
2017-03-08 13:53:58 +01:00
#### 2. `gh-pages`
2017-10-29 03:50:57 +01:00
This branch is responsible for the [gethead.info ](https://gethead.info/ ) website. We use [Jekyll ](https://jekyllrb.com/ ) to deploy the `README.md` Markdown file through [GitHub Pages ](https://pages.github.com/ ). All website related modifications must be directed here.
2017-03-08 13:53:58 +01:00
2017-10-28 21:19:35 +02:00
You may want to go through the [Jekyll Docs ](https://jekyllrb.com/docs/home/ ) and understand how Jekyll works before working on this branch.
2017-03-08 13:53:58 +01:00
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
2017-12-21 18:03:25 +01:00
**[Josh Buchea](https://joshbuchea.com/)**
2016-04-26 22:34:17 +02:00
2016-04-20 22:08:36 +02:00
## License
2017-10-29 03:37:48 +01:00
[![CC0 ](https://i.creativecommons.org/p/zero/1.0/88x31.png )](https://creativecommons.org/publicdomain/zero/1.0/)
2016-05-30 09:23:39 +02:00
2017-07-24 18:46:05 +02:00
**[⬆ back to top](#table-of-contents)**