Skip to content

HTML

Getting Started

hello.html {.col-span-2 .row-span-2}

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>HTML5 Boilerplate</title>
</head>
<body>
<h1>Hello world, hello CheatSheets.zip!</h1>
</body>
</html>

Or try it out in the jsfiddle

Comment

<!-- this is a comment -->
<!--
Or you can comment out a
large number of lines.
-->

Paragraph

<p>I'm from CheatSheets.zip</p>
<p>Share quick reference cheat sheet.</p>

See: The Paragraph element

<a href="https://cheatsheets.zip">CheatSheets</a>
<a href="mailto:jack@abc.com">Email</a>
<a href="tel:+12345678">Call</a>
<a href="sms:+12345678&body=ha%20ha">Msg</a>

hrefThe URL that the hyperlink points to
relRelationship of the linked URL
targetLink target location:
_self, _blank, _top, _parent

{.left-text}

See: The <a> Attributes

Image Tag

<img loading="lazy" src="https://xxx.png" alt="Describe image here" width="400" height="400" />

srcRequired, Image location (URL | Path)
altDescribe of the image
widthWidth of the image
heightHeight of the image
loadingHow the browser should load

{.left-text}

See: The Image Embed element

Text Formatting Tags

<b>Bold Text</b>
<strong>This text is important</strong>
<i>Italic Text</i>
<em>This text is emphasized</em>
<u>Underline Text</u>
<pre>Pre-formatted Text</pre>
<code>Source code</code>
<del>Deleted text</del>
<mark>Highlighted text (HTML5)</mark>
<ins>Inserted text</ins>
<sup>Makes text superscripted</sup>
<sub>Makes text subscripted</sub>
<small>Makes text smaller</small>
<kbd>Ctrl</kbd>
<blockquote>Text Block Quote</blockquote>

Headings

<h1>This is Heading 1</h1>
<h2>This is Heading 2</h2>
<h3>This is Heading 3</h3>
<h4>This is Heading 4</h4>
<h5>This is Heading 5</h5>
<h6>This is Heading 6</h6>

You should only have one h1 on your page

Section Divisions

<div></div>Division or Section of Page Content
<span></span>Section of text within other content
<p></p>Paragraph of Text
<br>Line Break
<hr>Basic Horizontal Line

These are the tags used to divide your page up into sections

Inline Frame {.row-span-2}

<iframe
title="New York"
width="342"
height="306"
id="gmap_canvas"
src="https://maps.google.com/maps?q=2880%20Broadway,%20New%20York&t=&z=13&ie=UTF8&iwloc=&output=embed"
scrolling="no"
>
</iframe>

↓ Preview

See: The Inline Frame element

JavaScript in HTML

<script type="text/javascript">
let text = "Hello CheatSheets.zip";
alert(text);
</script>

External JavaScript

<body>
...
<script src="app.js"></script>
</body>

CSS in HTML

<style type="text/css">
h1 {
color: purple;
}
</style>

External stylesheet

<head>
...
<link rel="stylesheet" href="style.css" />
</head>

HTML5 Tags

Document

<body>
<header>
<nav>...</nav>
</header>
<main>
<h1>CheatSheets.zip</h1>
</main>
<footer>
<p>©2023 CheatSheets.zip</p>
</footer>
</body>

Header Navigation

<header>
<nav>
<ul>
<li><a href="#">Edit Page</a></li>
<li><a href="#">Twitter</a></li>
<li><a href="#">Facebook</a></li>
</ul>
</nav>
</header>

HTML5 Tags {.row-span-4}

articleContent that’s independent
asideSecondary content
audioEmbeds a sound, or an audio stream
bdiThe Bidirectional Isolate element
canvasDraw graphics via JavaScript
dataMachine readable content
datalistA set of pre-defined options
detailsAdditional information
dialogA dialog box or sub-window
embedEmbeds external application
figcaptionA caption or legend for a figure
figureA figure illustrated
footerFooter or least important
headerMasthead or important information
mainThe main content of the document
markText highlighted
meterA scalar value within a known range
navA section of navigation links
outputThe result of a calculation
pictureA container for multiple image sources
progressThe completion progress of a task
rpProvides fall-back parenthesis
rtDefines the pronunciation of character
rubyRepresents a ruby annotation
sectionA group in a series of related content
sourceResources for the media elements
summaryA summary for the <details> element
templateDefines the fragments of HTML
timeA time or date
trackText tracks for the media elements
videoEmbeds video
wbrA line break opportunity

HTML5 Video

<video controls="" width="100%">
<source src="https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.mp4" type="video/mp4" />
Sorry, your browser doesn't support embedded videos.
</video>

↓ Preview

HTML5 Audio

<audio controls src="https://interactive-examples.mdn.mozilla.net/media/cc0-audio/t-rex-roar.mp3">
Your browser does not support the audio element.
</audio>

↓ Preview

HTML5 Ruby

<ruby><rp>(</rp><rt>hàn</rt><rp>)</rp><rp>(</rp><rt></rt><rp>)</rp> </ruby>

↓ Preview

(hàn)()

HTML5 kdi

<ul>
<li>User <bdi>hrefs</bdi>: 60 points</li>
<li>User <bdi>jdoe</bdi>: 80 points</li>
<li>User <bdi>إيان</bdi>: 90 points</li>
</ul>

↓ Preview

  • User hrefs: 60 points
  • User jdoe: 80 points
  • User إيان: 90 points

HTML5 progress

<progress value="50" max="100"></progress>

HTML5 mark

<p>I Love <mark>CheatSheets.zip</mark></p>

I Love CheatSheets.zip

HTML Tables

Table Example {.row-span-2}

<table>
<thead>
<tr>
<td>name</td>
<td>age</td>
</tr>
</thead>
<tbody>
<tr>
<td>Roberta</td>
<td>39</td>
</tr>
<tr>
<td>Oliver</td>
<td>25</td>
</tr>
</tbody>
</table>

HTML Table Tags {.row-span-2}

TagDescription
<table>Defines a table
<th>Defines a header cell in a table
<tr>Defines a row in a table
<td>Defines a cell in a table
<caption>Defines a table caption
<colgroup>Defines a group of columns
<col>Defines a column within a table
<thead>Groups the header content
<tbody>Groups the body content
<tfoot>Groups the footer content

<td> Attributes

AttributeDescription
colspanNumber of columns a cell should span
headersOne or more header cells a cell is related to
rowspanNumber of rows a cell should span

See: td#Attributes

<th> Attributes

AttributeDescription
colspanNumber of columns a cell should span
headersOne or more header cells a cell is related to
rowspanNumber of rows a cell should span
abbrDescription of the cell’s content
scopeThe header element relates to

See: th#Attributes

HTML Lists

Unordered list

<ul>
<li>I'm an item</li>
<li>I'm another item</li>
<li>I'm another item</li>
</ul>

See: The Unordered List element

Ordered list

<ol>
<li>I'm the first item</li>
<li>I'm the second item</li>
<li>I'm the third item</li>
</ol>

See: The Ordered List element

Definition list

<dl>
<dt>A Term</dt>
<dd>Definition of a term</dd>
<dt>Another Term</dt>
<dd>Definition of another term</dd>
</dl>

See: The Description List element

HTML Forms

Form tags {.row-span-2}

<form method="POST" action="api/login">
<label for="mail">Email: </label>
<input type="email" id="mail" name="mail" />
<br />
<label for="pw">Password: </label>
<input type="password" id="pw" name="pw" />
<br />
<input type="submit" value="Login" />
<br />
<input type="checkbox" id="ck" name="ck" />
<label for="ck">Remember me</label>
</form>

↓ Preview




The HTML <form> element is used to collect and send information to an external source.

Form Attribute

AttributeDescription
nameName of form for scripting
actionURL of form script
methodHTTP method, POST / GET (default)
enctypeMedia type, See enctype
onsubmitRuns when the form was submit
onresetRuns when the form was reset

Label tags

<!-- Nested label -->
<label
>Click me
<input type="text" id="user" name="name" />
</label>

<!-- 'for' attribute -->
<label for="user">Click me</label>
<input id="user" type="text" name="name" />

for in a label references an input’s id attribute

Input tags

<label for="Name">Name:</label> <input type="text" name="Name" id="" />

↓ Preview

See: HTML input Tags

Textarea tags

<textarea rows="2" cols="30" name="address" id="address"></textarea>

↓ Preview

Textarea is a multiple-line text input control

Radio Buttons

<input type="radio" name="gender" id="m" />
<label for="m">Male</label>
<input type="radio" name="gender" id="f" />
<label for="f">Female</label>

↓ Preview

Radio buttons are used to let the user select exactly one

Checkboxes

<input type="checkbox" name="s" id="soc" />
<label for="soc">Soccer</label>
<input type="checkbox" name="s" id="bas" />
<label for="bas">Baseball</label>

↓ Preview

Checkboxes allows the user to select one or more

Select tags

<label for="city">City:</label>
<select name="city" id="city">
<option value="1">Sydney</option>
<option value="2">Melbourne</option>
<option value="3">Cromwell</option>
</select>

↓ Preview

A select box is a dropdown list of options

Fieldset tags

<fieldset>
<legend>Your favorite monster</legend>
<input type="radio" id="kra" name="m" />
<label for="kraken">Kraken</label><br />
<input type="radio" id="sas" name="m" />
<label for="sas">Sasquatch</label>
</fieldset>

↓ Preview

Your favorite monster

Datalist tags(HTML5)

<label for="b">Choose a browser: </label>
<input list="list" id="b" name="browser" />
<datalist id="list">
<option value="Chrome"></option>
<option value="Firefox"></option>
<option value="Internet Explorer"></option>
<option value="Opera"></option>
<option value="Safari"></option>
<option value="Microsoft Edge"></option>
</datalist>

↓ Preview

Submit and Reset Buttons

<form action="register.php" method="post">
<label for="foo">Name:</label>
<input type="text" name="name" id="foo" />
<input type="submit" value="Submit" />
<input type="reset" value="Reset" />
</form>

↓ Preview

Submit the data to server; Reset to default values

HTML input Tags {.cols-2}

Input Attributes {.row-span-2}

The input tag is an empty element, identifying the particular type of field information to obtain from a user.

<input type="text" name="?" value="?" minlength="6" required />

-
type="…"The type of data that is being input
value="…"Default value
name="…"Used to describe this data in the HTTP request
id="…"Unique identifier that other HTML elements
readonlyStops the user from modifying
disabledStops any interaction
checkedThe radio or checkbox select or not
requiredBeing compulsory, See required
placeholder="…"Adds a temporary, See ::placeholder
autocomplete="off"Disable auto completion
autocapitalize="none"Disable auto capitalization
inputmode="…"Display a specific keyboard, See inputmode
list="…"The id of an associated datalist
maxlength="…"Maximum number of characters
minlength="…"Minimum number of characters
min="…"Minimum numerical value on range & number
max="…"Maximum numerical value on range & number
step="…"How the number will increment in range & number
pattern="…"Specifies a Regular expression, See pattern
autofocusBe focused
spellcheckPerform spell checking
multipleWhether to allow multiple values
accept=""Expected file type in file upload controls

{.left-text}

Also see: Attributes for the <input> element

Input types

type="checkbox"
type="radio"
type="file"
type="hidden"
type="text"
type="password"
type="image"
type="reset"
type="button"
type="submit"

New Input Types in HTML5

type="color"
type="date"
type="time"
type="month"
type="datetime-local"
type="week"
type="email"
type="tel"
type="url"
type="number"
type="search"
type="range"

Input CSS selectors

input:focusWhen its keyboard focused

See: Input pseudo classes

HTML meta Tags {.cols-2}

Meta tags {.row-span-3}

The meta tag describes meta data within an HTML document. It explains additional material about the HTML.

<meta charset="utf-8" />
<!-- title -->
<title>···</title>
<meta property="og:title" content="···" />
<meta name="twitter:title" content="···" />

<!-- url -->
<link rel="canonical" href="https://···" />
<meta property="og:url" content="https://···" />
<meta name="twitter:url" content="https://···" />

<!-- description -->
<meta name="description" content="···" />
<meta property="og:description" content="···" />
<meta name="twitter:description" content="···" />

<!-- image -->
<meta property="og:image" content="https://···" />
<meta name="twitter:image" content="https://···" />

<!-- ua -->
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />

<!-- viewport -->
<meta name="viewport" content="width=device-width" />
<meta name="viewport" content="width=1024" />

Open Graph

<meta property="og:type" content="website" />
<meta property="og:locale" content="en_CA" />
<meta property="og:title" content="HTML cheatsheet" />
<meta property="og:url" content="https://cheatsheets.zip/html" />
<meta property="og:image" content="https://xxx.com/image.jpg" />
<meta property="og:site_name" content="Name of your website" />
<meta property="og:description" content="Description of this page" />

Used by Facebook, Instagram, Pinterest, LinkedIn, etc.

Twitter Cards

<meta name="twitter:card" content="summary" />
<meta name="twitter:site" content="@FechinLi" />
<meta name="twitter:title" content="HTML cheatsheet" />
<meta name="twitter:url" content="https://cheatsheets.zip/html" />
<meta name="twitter:description" content="Description of this page" />
<meta name="twitter:image" content="https://xxx.com/image.jpg" />

See: Twitter Card Documentation

Geotagging

<meta name="ICBM" content="45.416667,-75.7" />
<meta name="geo.position" content="45.416667;-75.7" />
<meta name="geo.region" content="ca-on" />
<meta name="geo.placename" content="Ottawa" />

See: Geotagging

Also see