HTML Quick Guide
HTML Quick Guide
HTML - Overview
HTML stands for Hypertext Markup Language, and it is the most widely used language to
write Web Pages.
Hypertext refers to the way in which Web pages (HTML documents) are linked
together. Thus, the link available on a webpage is called Hypertext.
As its name suggests, HTML is a Markup Language which means you use HTML
to simply "mark-up" a text document with tags that tell a Web browser how to
structure it to display.
Originally, HTML was developed with the intent of defining the structure of documents
like headings, paragraphs, lists, and so forth to facilitate the sharing of scientific
information between researchers.
Now, HTML is being widely used to format web pages with the help of different tags
available in HTML language.
Open Compiler
<!DOCTYPE html>
<html>
<head>
Page 2 of 141
<title>This is document title</title>
</head>
<body>
<h1>This is a heading</h1>
<p>Document content goes here.....</p>
</body>
</html>
Advertisement
HTML Tags
As told earlier, HTML is a markup language and makes use of various tags to format the
content. These tags are enclosed within angle braces <Tag Name>. Except few tags,
most of the tags have their corresponding closing tags. For example, <html> has its
closing tag </html> and <body> tag has its closing tag </body> tag etc.
<!DOCTYPE...>
1
This tag defines the document type and HTML version.
2 <html>
This tag encloses the complete HTML document and mainly comprises of
document header which is represented by <head>...</head> and document
Page 3 of 141
body which is represented by <body>...</body> tags.
<head>
3 This tag represents the document's header which can keep other HTML tags
like <title>, <link> etc.
<title>
4
The <title> tag is used inside the <head> tag to mention the document title.
<body>
5 This tag represents the document's body which keeps other HTML tags like
<h1>, <div>, <p> etc.
<h1>
6
This tag represents the heading.
<p>
7
This tag represents a paragraph.
To learn HTML, you will need to study various tags and understand how they behave,
while formatting a textual document. Learning HTML is simple as users have to learn the
usage of different tags in order to format the text or images to make a beautiful
webpage.
World Wide Web Consortium (W3C) recommends to use lowercase tags starting from
HTML 4.
<html>
<head>
Document header related tags
</head>
<body>
Document body related tags
</body>
</html>
We will study all the header and body tags in subsequent chapters, but for now let's see
what is document declaration tag.
Page 4 of 141
<!DOCTYPE html>
There are many other declaration types which can be used in HTML document depending
on what version of HTML is being used. We will see more details on this while discussing
<!DOCTYPE...> tag along with other HTML tags.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Heading Example</title>
</head>
<body>
<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>
</body>
Page 5 of 141
</html>
Paragraph Tag
The <p> tag offers a way to structure your text into different paragraphs. Each
paragraph of text should go in between an opening <p> and a closing </p> tag as
shown below in the example −
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Paragraph Example</title>
</head>
<body>
<p>Here is a first paragraph of text.</p>
<p>Here is a second paragraph of text.</p>
<p>Here is a third paragraph of text.</p>
</body>
</html>
The <br /> tag has a space between the characters br and the forward slash. If you omit
this space, older browsers will have trouble rendering the line break, while if you miss
the forward slash character and just use <br> it is not valid in XHTML.
Example
Page 6 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Line Break Example</title>
</head>
<body>
<p>Hello<br />
You delivered your assignment ontime.<br />
Thanks<br />
Mahnaz</p>
</body>
</html>
Centering Content
You can use <center> tag to put any content in the center of the page or any table cell.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Centring Content Example</title>
</head>
<body>
<p>This text is not in the center.</p>
<center>
<p>This text is in the center.</p>
</center>
</body>
Page 7 of 141
</html>
Horizontal Lines
Horizontal lines are used to visually break-up sections of a document. The <hr> tag
creates a line from the current position in the document to the right margin and breaks
the line accordingly.
For example, you may want to give a line between two paragraphs as in the given
example below −
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Horizontal Line Example</title>
</head>
<body>
<p>This is paragraph one and should be on top</p>
<hr />
<p>This is paragraph two and should be at bottom</p>
</body>
</html>
Again <hr /> tag is an example of the empty element, where you do not need opening
and closing tags, as there is nothing to go in between them.
The <hr /> element has a space between the characters hr and the forward slash. If
you omit this space, older browsers will have trouble rendering the horizontal line, while
if you miss the forward slash character and just use <hr> it is not valid in XHTML
Preserve Formatting
Page 8 of 141
Sometimes, you want your text to follow the exact format of how it is written in the
HTML document. In these cases, you can use the preformatted tag <pre>.
Any text between the opening <pre> tag and the closing </pre> tag will preserve the
formatting of the source document.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Preserve Formatting Example</title>
</head>
<body>
<pre>
function testFunction( strText ){
alert (strText)
}
</pre>
</body>
</html>
Try using the same code without keeping it inside <pre>...</pre> tags
Nonbreaking Spaces
Suppose you want to use the phrase "12 Angry Men." Here, you would not want a
browser to split the "12, Angry" and "Men" across two lines −
In cases, where you do not want the client browser to break text, you should use a
nonbreaking space entity instead of a normal space. For example, when coding
the "12 Angry Men" in a paragraph, you should use something similar to the following
code −
Page 9 of 141
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Nonbreaking Spaces Example</title>
</head>
<body>
<p>An example of this technique appears in the movie
"12 Angry Men."</p>
</body>
</html>
HTML - Elements
An HTML element is defined by a starting tag. If the element contains other content, it
ends with a closing tag, where the element name is preceded by a forward slash as
shown below with few tags −
<br />
HTML documents consists of a tree of these elements and they specify how HTML
documents should be built, and what kind of content should be placed in what part of an
HTML document.
Page 10 of 141
For example, <p> is starting tag of a paragraph and </p> is closing tag of the same
paragraph but <p>This is paragraph</p> is a paragraph element.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Nested Elements Example</title>
</head>
<body>
<h1>This is <i>italic</i> heading</h1>
<p>This is <u>underlined</u> paragraph</p>
</body>
</html>
HTML - Attributes
We have seen few HTML tags and their usage like heading tags <h1>, <h2>, paragraph
tag <p> and other tags. We used them so far in their simplest form, but most of the
HTML tags can also have attributes, which are extra bits of information.
An attribute is used to define the characteristics of an HTML element and is placed inside
the element's opening tag. All attributes are made up of two parts − a name and a
value
Page 11 of 141
The name is the property you want to set. For example, the paragraph <p>
element in the example carries an attribute whose name is align, which you can
use to indicate the alignment of paragraph on the page.
The value is what you want the value of the property to be set and always put
within quotations. The below example shows three possible values of align
attribute: left, center and right.
Attribute names and attribute values are case-insensitive. However, the World Wide Web
Consortium (W3C) recommends lowercase attributes/attribute values in their HTML 4
recommendation.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Align Attribute Example</title>
</head>
<body>
<p align = "left">This is left aligned</p>
<p align = "center">This is center aligned</p>
<p align = "right">This is right aligned</p>
</body>
</html>
Core Attributes
The four core attributes that can be used on the majority of HTML elements (although
not all) are −
Id
Title
Class
Style
Page 12 of 141
The Id Attribute
The id attribute of an HTML tag can be used to uniquely identify any element within an
HTML page. There are two primary reasons that you might want to use an id attribute on
an element −
If you have two elements of the same name within a Web page (or style sheet),
you can use the id attribute to distinguish between elements that have the same
name.
We will discuss style sheet in separate tutorial. For now, let's use the id attribute to
distinguish between two paragraph elements as shown below.
Example
The behavior of this attribute will depend upon the element that carries it, although it is
often displayed as a tooltip when cursor comes over the element or while the element is
loading.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>The title Attribute Example</title>
</head>
<body>
<h3 title = "Hello HTML!">Titled Heading Tag Example</h3>
Page 13 of 141
</body>
</html>
Now try to bring your cursor over "Titled Heading Tag Example" and you will see that
whatever title you used in your code is coming out as a tooltip of the cursor.
The class attribute is used to associate an element with a style sheet, and specifies the
class of element. You will learn more about the use of the class attribute when you will
learn Cascading Style Sheet (CSS). So for now you can avoid it.
The value of the attribute may also be a space-separated list of class names. For
example −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>The style Attribute</title>
</head>
<body>
<p style = "font-family:arial; color:#FF0000;">Some text...</p>
</body>
</html>
At this point of time, we are not learning CSS, so just let's proceed without bothering
much about CSS. Here, you need to understand what are HTML attributes and how they
can be used while formatting content.
Page 14 of 141
Internationalization Attributes
There are three internationalization attributes, which are available for most (although not
all) XHTML elements.
dir
lang
xml:lang
The dir attribute allows you to indicate to the browser about the direction in which the
text should flow. The dir attribute can take one of two values, as you can see in the table
that follows −
Value Meaning
Right to left (for languages such as Hebrew or Arabic that are read right to
rtl
left)
Example
Open Compiler
<!DOCTYPE html>
<html dir = "rtl">
<head>
<title>Display Directions</title>
</head>
<body>
This is how IE 5 renders right-to-left directed text.
</body>
</html>
When dir attribute is used within the <html> tag, it determines how text will be
presented within the entire document. When used within another tag, it controls the
Page 15 of 141
text's direction for just the content of that tag.
The lang attribute allows you to indicate the main language used in a document, but this
attribute was kept in HTML only for backwards compatibility with earlier versions of
HTML. This attribute has been replaced by the xml:lang attribute in new XHTML
documents.
The values of the lang attribute are ISO-639 standard two-character language codes.
Check HTML Language Codes: ISO 639 for a complete list of language codes.
Example
Open Compiler
<!DOCTYPE html>
<html lang = "en">
<head>
<title>English Language Page</title>
</head>
<body>
This page is using English Language
</body>
</html>
Generic Attributes
Here's a table of some other attributes that are readily usable with many of the HTML
tags.
We will see related examples as we will proceed to study other HTML tags. For a
complete list of HTML Tags and related attributes please check reference to HTML Tags
List.
HTML - Formatting
If you use a word processor, you must be familiar with the ability to make text bold,
italicized, or underlined; these are just three of the ten options available to indicate how
text can appear in HTML and XHTML.
Bold Text
Anything that appears within <b>...</b> element, is displayed in bold as shown below
−
Example
Open Compiler
<!DOCTYPE html>
<html>
Page 17 of 141
<head>
<title>Bold Text Example</title>
</head>
<body>
<p>The following word uses a <b>bold</b> typeface.</p>
</body>
</html>
Italic Text
Anything that appears within <i>...</i> element is displayed in italicized as shown
below −
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Italic Text Example</title>
</head>
<body>
<p>The following word uses an <i>italicized</i> typeface.</p>
</body>
</html>
Underlined Text
Anything that appears within <u>...</u> element, is displayed with underline as shown
below −
Example
Page 18 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Underlined Text Example</title>
</head>
<body>
<p>The following word uses an <u>underlined</u> typeface.</p>
</body>
</html>
Strike Text
Anything that appears within <strike>...</strike> element is displayed with
strikethrough, which is a thin line through the text as shown below −
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Strike Text Example</title>
</head>
<body>
<p>The following word uses a <strike>strikethrough</strike>
typeface.</p>
</body>
</html>
Monospaced Font
Page 19 of 141
The content of a <tt>...</tt> element is written in monospaced font. Most of the fonts
are known as variable-width fonts because different letters are of different widths (for
example, the letter 'm' is wider than the letter 'i'). In a monospaced font, however, each
letter has the same width.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Monospaced Font Example</title>
</head>
<body>
<p>The following word uses a <tt>monospaced</tt> typeface.</p>
</body>
</html>
Superscript Text
The content of a <sup>...</sup> element is written in superscript; the font size used
is the same size as the characters surrounding it but is displayed half a character's height
above the other characters.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Superscript Text Example</title>
</head>
<body>
Page 20 of 141
<p>The following word uses a <sup>superscript</sup> typeface.</p>
</body>
</html>
Subscript Text
The content of a <sub>...</sub> element is written in subscript; the font size used is
the same as the characters surrounding it, but is displayed half a character's height
beneath the other characters.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Subscript Text Example</title>
</head>
<body>
<p>The following word uses a <sub>subscript</sub> typeface.</p>
</body>
</html>
Inserted Text
Anything that appears within <ins>...</ins> element is displayed as inserted text.
Example
Open Compiler
<!DOCTYPE html>
<html>
Page 21 of 141
<head>
<title>Inserted Text Example</title>
</head>
<body>
<p>I want to drink <del>cola</del> <ins>wine</ins></p>
</body>
</html>
Deleted Text
Anything that appears within <del>...</del> element, is displayed as deleted text.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Deleted Text Example</title>
</head>
<body>
<p>I want to drink <del>cola</del> <ins>wine</ins></p>
</body>
</html>
Larger Text
The content of the <big>...</big> element is displayed one font size larger than the
rest of the text surrounding it as shown below −
Example
Open Compiler
Page 22 of 141
<!DOCTYPE html>
<html>
<head>
<title>Larger Text Example</title>
</head>
<body>
<p>The following word uses a <big>big</big> typeface.</p>
</body>
</html>
Smaller Text
The content of the <small>...</small> element is displayed one font size smaller than
the rest of the text surrounding it as shown below −
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Smaller Text Example</title>
</head>
<body>
<p>The following word uses a <small>small</small> typeface.</p>
</body>
</html>
Grouping Content
The <div> and <span> elements allow you to group together several elements to
create sections or subsections of a page.
Page 23 of 141
For example, you might want to put all of the footnotes on a page within a <div>
element to indicate that all of the elements within that <div> element relate to the
footnotes. You might then attach a style to this <div> element so that they appear using
a special set of style rules.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Div Tag Example</title>
</head>
<body>
<div id = "menu" align = "middle" >
<a href = "/index.htm">HOME</a> |
<a href = "/about/contact_us.htm">CONTACT</a> |
<a href = "/about/index.htm">ABOUT</a>
</div>
</html>
The <span> element, on the other hand, can be used to group inline elements only. So,
if you have a part of a sentence or paragraph which you want to group together, you
could use the <span> element as follows.
Example
Open Compiler
Page 24 of 141
<!DOCTYPE html>
<html>
<head>
<title>Span Tag Example</title>
</head>
<body>
<p>This is the example of <span style = "color:green">span
tag</span>
and the <span style = "color:red">div tag</span> alongwith
CSS</p>
</body>
</html>
These tags are commonly used with CSS to allow you to attach a style to a section of a
page.
Emphasized Text
Anything that appears within <em>...</em> element is displayed as emphasized text.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Emphasized Text Example</title>
</head>
Page 25 of 141
<body>
<p>The following word uses an <em>emphasized</em> typeface.</p>
</body>
</html>
Marked Text
Anything that appears with-in <mark>...</mark> element, is displayed as marked
with yellow ink.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Marked Text Example</title>
</head>
<body>
<p>The following word has been <mark>marked</mark> with
yellow</p>
</body>
</html>
Strong Text
Anything that appears within <strong>...</strong> element is displayed as important
text.
Example
Open Compiler
Page 26 of 141
<!DOCTYPE html>
<html>
<head>
<title>Strong Text Example</title>
</head>
<body>
<p>The following word uses a <strong>strong</strong> typeface.
</p>
</body>
</html>
Text Abbreviation
You can abbreviate a text by putting it inside opening <abbr> and closing </abbr> tags.
If present, the title attribute must contain this full description and nothing else.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Text Abbreviation</title>
</head>
<body>
<p>My best friend's name is <abbr title =
"Abhishek">Abhy</abbr>.</p>
</body>
</html>
Acronym Element
Page 27 of 141
The <acronym> element allows you to indicate that the text between <acronym> and
</acronym> tags is an acronym.
At present, the major browsers do not change the appearance of the content of the
<acronym> element.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Acronym Example</title>
</head>
<body>
<p>This chapter covers marking up text in
<acronym>XHTML</acronym>.</p>
</body>
</html>
Text Direction
The <bdo>...</bdo> element stands for Bi-Directional Override and it is used to
override the current text direction.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Text Direction Example</title>
</head>
Page 28 of 141
<body>
<p>This text will go left to right.</p>
<p><bdo dir = "rtl">This text will go right to left.</bdo></p>
</body>
</html>
Special Terms
The <dfn>...</dfn> element (or HTML Definition Element) allows you to specify that
you are introducing a special term. It's usage is similar to italic words in the midst of a
paragraph.
Typically, you would use the <dfn> element the first time you introduce a key term. Most
recent browsers render the content of a <dfn> element in an italic font.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Special Terms Example</title>
</head>
<body>
<p>The following word is a <dfn>special</dfn> term.</p>
</body>
</html>
Quoting Text
When you want to quote a passage from another source, you should put it in between
<blockquote>...</blockquote> tags.
Text inside a <blockquote> element is usually indented from the left and right edges of
the surrounding text, and sometimes uses an italicized font.
Page 29 of 141
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Blockquote Example</title>
</head>
<body>
<p>The following description of XHTML is taken from the W3C Web
site:</p>
</html>
Short Quotations
The <q>...</q> element is used when you want to add a double quote within a
sentence.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Double Quote Example</title>
</head>
Page 30 of 141
<body>
<p>Amit is in Spain, <q>I think I am wrong</q>.</p>
</body>
</html>
Text Citations
If you are quoting a text, you can indicate the source placing it between an opening
<cite> tag and closing </cite> tag
As you would expect in a print publication, the content of the <cite> element is rendered
in italicized text by default.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Citations Example</title>
</head>
<body>
<p>This HTML tutorial is derived from <cite>W3 Standard for
HTML</cite>.</p>
</body>
</html>
Computer Code
Any programming code to appear on a Web page should be placed inside <code>...
</code> tags. Usually the content of the <code> element is presented in a
monospaced font, just like the code in most programming books.
Example
Page 31 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Computer Code Example</title>
</head>
<body>
<p>Regular text. <code>This is code.</code> Regular text.</p>
</body>
</html>
Keyboard Text
When you are talking about computers, if you want to tell a reader to enter some text,
you can use the <kbd>...</kbd> element to indicate what should be typed in, as in
this example.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Keyboard Text Example</title>
</head>
<body>
<p>Regular text. <kbd>This is inside kbd element</kbd> Regular
text.</p>
</body>
</html>
Page 32 of 141
Programming Variables
This element is usually used in conjunction with the <pre> and <code> elements to
indicate that the content of that element is a variable.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Variable Text Example</title>
</head>
<body>
<p><code>document.write("<var>user-name</var>")</code></p>
</body>
</html>
Program Output
The <samp>...</samp> element indicates sample output from a program, and script
etc. Again, it is mainly used when documenting programming or coding concepts.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Program Output Example</title>
</head>
<body>
<p>Result produced by the program is <samp>Hello World!</samp>
Page 33 of 141
</p>
</body>
</html>
Address Text
The <address>...</address> element is used to contain any address.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Address Example</title>
</head>
<body>
<address>388A, Road No 22, Jubilee Hills - Hyderabad</address>
</body>
</html>
The <meta> tag is used to provide such additional information. This tag is an empty
element and so does not have a closing tag but it carries information within its
attributes.
You can include one or more meta tags in your document based on what information you
want to keep in your document but in general, meta tags do not impact physical
appearance of the document so from appearance point of view, it does not matter if you
include them or not.
Page 34 of 141
Name
1 Name for the property. Can be anything. Examples include, keywords,
description, author, revised, generator etc.
content
2
Specifies the property's value.
scheme
3 Specifies a scheme to interpret the property's value (as declared in the
content attribute).
http-equiv
Used for http response message headers. For example, http-equiv can be
4
used to refresh the page or to set a cookie. Values include content-type,
expires, refresh and set-cookie.
Specifying Keywords
You can use <meta> tag to specify important keywords related to the document and
later these keywords are used by the search engines while indexing your webpage for
searching purpose.
Example
Following is an example, where we are adding HTML, Meta Tags, Metadata as important
keywords about the document.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
</head>
Page 35 of 141
<body>
<p>Hello HTML5!</p>
</body>
</html>
Document Description
You can use <meta> tag to give a short description about the document. This again can
be used by various search engines while indexing your webpage for searching purpose.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags."
/>
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Example
Page 36 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags."
/>
<meta name = "revised" content = "Tutorialspoint, 3/7/2014" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Document Refreshing
A <meta> tag can be used to specify a duration after which your web page will keep
refreshing automatically.
Example
If you want your page keep refreshing after every 5 seconds then use the following
syntax.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags."
/>
<meta name = "revised" content = "Tutorialspoint, 3/7/2014" />
<meta http-equiv = "refresh" content = "5" />
Page 37 of 141
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Page Redirection
You can use <meta> tag to redirect your page to any other webpage. You can also
specify a duration if you want to redirect the page after a certain number of seconds.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags."
/>
<meta name = "revised" content = "Tutorialspoint, 3/7/2014" />
<meta http-equiv = "refresh" content = "5; url =
https://www.tutorialspoint.com" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Setting Cookies
Page 38 of 141
Cookies are data, stored in small text files on your computer and it is exchanged
between web browser and web server to keep track of various information based on your
web application need.
You can use <meta> tag to store cookies on client side and later this information can be
used by the Web Server to track a site visitor.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta http-equiv = "cookie" content = "userid = xyz; expires =
Wednesday, 08-Aug-15 23:59:59 GMT;" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
If you do not include the expiration date and time, the cookie is considered a session
cookie and will be deleted when the user exits the browser.
Note − You can check PHP and Cookies tutorial for a complete detail on Cookies.
Example
Open Compiler
<!DOCTYPE html>
<html>
Page 39 of 141
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags."
/>
<meta name = "author" content = "Mahnaz Mohtashim" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Example
By default, Web servers and Web browsers use ISO-8859-1 (Latin1) encoding to process
Web pages. Following is an example to set UTF-8 encoding −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags."
/>
<meta name = "author" content = "Mahnaz Mohtashim" />
<meta http-equiv = "Content-Type" content = "text/html; charset =
UTF-8" />
</head>
<body>
<p>Hello HTML5!</p>
Page 40 of 141
</body>
</html>
To serve the static page with traditional Chinese characters, the webpage must contain a
<meta> tag to set Big5 encoding −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags."
/>
<meta name = "author" content = "Mahnaz Mohtashim" />
<meta http-equiv = "Content-Type" content = "text/html; charset =
Big5" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
HTML - Comments
Comment is a piece of code which is ignored by any web browser. It is a good practice to
add comments into your HTML code, especially in complex documents, to indicate
sections of a document, and any other notes to anyone looking at the code. Comments
help you and others understand your code and increases code readability.
HTML comments are placed in between <!-- ... --> tags. So, any content placed with-in
<!-- ... --> tags will be treated as comment and will be completely ignored by the
browser.
Example
Page 41 of 141
Open Compiler
<!DOCTYPE html>
<html>
<body>
<p>Document content goes here.....</p>
</body>
</html>
Example
Here, the given comment is a valid comment and will be wiped off by the browser.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Valid Comment Example</title>
</head>
<body>
<!-- This is valid comment -->
<p>Document content goes here.....</p>
</body>
Page 42 of 141
</html>
But, following line is not a valid comment and will be displayed by the browser. This is
because there is a space between the left angle bracket and the exclamation mark.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Invalid Comment Example</title>
</head>
<body>
< !-- This is not a valid comment -->
<p>Document content goes here.....</p>
</body>
</html>
Multiline Comments
So far we have seen single line comments, but HTML supports multi-line comments as
well.
You can comment multiple lines by the special beginning tag <!-- and ending tag -->
placed before the first line and end of the last line as shown in the given example below.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Multiline Comments</title>
</head>
Page 43 of 141
<body>
<!--
This is a multiline comment and it can
span through as many as lines you like.
-->
</html>
Conditional Comments
Conditional comments only work in Internet Explorer (IE) on Windows but they are
ignored by other browsers. They are supported from Explorer 5 onwards, and you can
use them to give conditional instructions to different versions of IE.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Conditional Comments</title>
<!--[if IE 6]>
Special instructions for IE 6 here
<![endif]-->
</head>
<body>
<p>Document content goes here.....</p>
</body>
</html>
Page 44 of 141
You will come across a situation where you will need to apply a different style sheet
based on different versions of Internet Explorer, in such situation conditional comments
will be helpful.
Note − The <comment> tag deprecated in HTML5. Do not use this element.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Using Comment Tag</title>
</head>
<body>
<p>This is <comment>not</comment> Internet Explorer.</p>
</body>
</html>
Example
Open Compiler
Page 45 of 141
<!DOCTYPE html>
<html>
<head>
<title>Commenting Script Code</title>
<script>
<!--
document.write("Hello World!")
//-->
</script>
</head>
<body>
<p>Hello , World!</p>
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Commenting Style Sheets</title>
<style>
<!--
.example {
border:1px solid #4a7d49;
Page 46 of 141
}
//-->
</style>
</head>
<body>
<div class = "example">Hello , World!</div>
</body>
</html>
HTML - Images
Images are very important to beautify as well as to depict many complex concepts in
simple way on your web page. This tutorial will take you through simple steps to use
images in your web pages.
Insert Image
You can insert any image in your web page by using <img> tag. Following is the simple
syntax to use this tag.
The <img> tag is an empty tag, which means that, it can contain only list of attributes
and it has no closing tag.
Example
To try following example, let's keep our HTML file test.htm and image file test.png in the
same directory −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Using Image in Webpage</title>
</head>
Page 47 of 141
<body>
<p>Simple Image Insert</p>
<img src = "/html/images/test.png" alt = "Test Image" />
</body>
</html>
You can use PNG, JPEG or GIF image file based on your comfort but make sure you
specify correct image file name in src attribute. Image name is always case sensitive.
The alt attribute is a mandatory attribute which specifies an alternate text for an image,
if the image cannot be displayed.
Example
Assuming our image location is "image/test.png", try the following example −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Using Image in Webpage</title>
</head>
<body>
<p>Simple Image Insert</p>
<img src = "/html/images/test.png" alt = "Test Image" />
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Set Image Width and Height</title>
</head>
<body>
<p>Setting image width and height</p>
<img src = "/html/images/test.png" alt = "Test Image" width =
"150" height = "100"/>
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Set Image Border</title>
</head>
<body>
Page 49 of 141
<p>Setting image Border</p>
<img src = "/html/images/test.png" alt = "Test Image" border =
"3"/>
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Set Image Alignment</title>
</head>
<body>
<p>Setting image Alignment</p>
<img src = "/html/images/test.png" alt = "Test Image" border =
"3" align = "right"/>
</body>
</html>
HTML - Tables
The HTML tables allow web authors to arrange data like text, images, links, other tables,
etc. into rows and columns of cells.
Page 50 of 141
The HTML tables are created using the <table> tag in which the <tr> tag is used to
create table rows and <td> tag is used to create data cells. The elements under <td>
are regular and left aligned by default
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Tables</title>
</head>
<body>
<table border = "1">
<tr>
<td>Row 1, Column 1</td>
<td>Row 1, Column 2</td>
</tr>
<tr>
<td>Row 2, Column 1</td>
<td>Row 2, Column 2</td>
</tr>
</table>
</body>
</html>
Here, the border is an attribute of <table> tag and it is used to put a border across all
the cells. If you do not need a border, then you can use border = "0".
Table Heading
Table heading can be defined using <th> tag. This tag will be put to replace <td> tag,
which is used to represent actual data cell. Normally you will put your top row as table
heading as shown below, otherwise you can use <th> element in any row. Headings,
which are defined in <th> tag are centered and bold by default.
Page 51 of 141
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Header</title>
</head>
<body>
<table border = "1">
<tr>
<th>Name</th>
<th>Salary</th>
</tr>
<tr>
<td>Ramesh Raman</td>
<td>5000</td>
</tr>
<tr>
<td>Shabbir Hussein</td>
<td>7000</td>
</tr>
</table>
</body>
</html>
Example
Page 52 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Cellpadding</title>
</head>
<body>
<table border = "1" cellpadding = "5" cellspacing = "5">
<tr>
<th>Name</th>
<th>Salary</th>
</tr>
<tr>
<td>Ramesh Raman</td>
<td>5000</td>
</tr>
<tr>
<td>Shabbir Hussein</td>
<td>7000</td>
</tr>
</table>
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
Page 53 of 141
<title>HTML Table Colspan/Rowspan</title>
</head>
<body>
<table border = "1">
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
<tr>
<td rowspan = "2">Row 1 Cell 1</td>
<td>Row 1 Cell 2</td>
<td>Row 1 Cell 3</td>
</tr>
<tr>
<td>Row 2 Cell 2</td>
<td>Row 2 Cell 3</td>
</tr>
<tr>
<td colspan = "3">Row 3 Cell 1</td>
</tr>
</table>
</body>
</html>
Tables Backgrounds
You can set table background using one of the following two ways −
bgcolor attribute − You can set background color for whole table or just for one
cell.
background attribute − You can set background image for whole table or just for
one cell.
You can also set border color also using bordercolor attribute.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Background</title>
</head>
<body>
<table border = "1" bordercolor = "green" bgcolor = "yellow">
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
<tr>
<td rowspan = "2">Row 1 Cell 1</td>
<td>Row 1 Cell 2</td>
<td>Row 1 Cell 3</td>
</tr>
<tr>
<td>Row 2 Cell 2</td>
<td>Row 2 Cell 3</td>
</tr>
<tr>
<td colspan = "3">Row 3 Cell 1</td>
</tr>
</table>
</body>
</html>
Here is an example of using background attribute. Here we will use an image available
in /images directory.
Page 55 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Background</title>
</head>
<body>
<table border = "1" bordercolor = "green" background =
"/images/test.png">
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
<tr>
<td rowspan = "2">Row 1 Cell 1</td>
<td>Row 1 Cell 2</td><td>Row 1 Cell 3</td>
</tr>
<tr>
<td>Row 2 Cell 2</td>
<td>Row 2 Cell 3</td>
</tr>
<tr>
<td colspan = "3">Row 3 Cell 1</td>
</tr>
</table>
</body>
</html>
Example
Page 56 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Width/Height</title>
</head>
<body>
<table border = "1" width = "400" height = "150">
<tr>
<td>Row 1, Column 1</td>
<td>Row 1, Column 2</td>
</tr>
<tr>
<td>Row 2, Column 1</td>
<td>Row 2, Column 2</td>
</tr>
</table>
</body>
</html>
Table Caption
The caption tag will serve as a title or explanation for the table and it shows up at the
top of the table. This tag is deprecated in newer version of HTML/XHTML.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Caption</title>
</head>
Page 57 of 141
<body>
<table border = "1" width = "100%">
<caption>This is the caption</caption>
<tr>
<td>row 1, column 1</td><td>row 1, columnn 2</td>
</tr>
<tr>
<td>row 2, column 1</td><td>row 2, columnn 2</td>
</tr>
</table>
</body>
</html>
The three elements for separating the head, body, and foot of a table are −
A table may contain several <tbody> elements to indicate different pages or groups of
data. But it is notable that <thead> and <tfoot> tags should appear before <tbody>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
Page 58 of 141
<title>HTML Table</title>
</head>
<body>
<table border = "1" width = "100%">
<thead>
<tr>
<td colspan = "4">This is the head of the table</td>
</tr>
</thead>
<tfoot>
<tr>
<td colspan = "4">This is the foot of the table</td>
</tr>
</tfoot>
<tbody>
<tr>
<td>Cell 1</td>
<td>Cell 2</td>
<td>Cell 3</td>
<td>Cell 4</td>
</tr>
</tbody>
</table>
</body>
</html>
Nested Tables
You can use one table inside another table. Not only tables you can use almost all the
tags inside table data tag <td>.
Example
Following is the example of using another table and other tags inside a table cell.
Open Compiler
Page 59 of 141
<!DOCTYPE html>
<html>
<head>
<title>HTML Table</title>
</head>
<body>
<table border = "1" width = "100%">
<tr>
<td>
<table border = "1" width = "100%">
<tr>
<th>Name</th>
<th>Salary</th>
</tr>
<tr>
<td>Ramesh Raman</td>
<td>5000</td>
</tr>
<tr>
<td>Shabbir Hussein</td>
<td>7000</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
HTML - Lists
HTML offers web authors three ways for specifying lists of information. All lists must
contain one or more list elements. Lists may contain −
<ul> − An unordered list. This will list items using plain bullets.
Page 60 of 141
<ol> − An ordered list. This will use different schemes of numbers to list your
items.
<dl> − A definition list. This arranges your items in the same way as they are
arranged in a dictionary.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Unordered List</title>
</head>
<body>
<ul>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Example
Following is an example where we used <ul type = "square">
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Unordered List</title>
</head>
<body>
<ul type = "square">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Example
Following is an example where we used <ul type = "disc"> −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Unordered List</title>
</head>
<body>
Page 62 of 141
<ul type = "disc">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Example
Following is an example where we used <ul type = "circle"> −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Unordered List</title>
</head>
<body>
<ul type = "circle">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "1">
Open Compiler
Page 64 of 141
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "1">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "I">
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "I">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
Page 65 of 141
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "i">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
Page 66 of 141
<body>
<ol type = "A">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "a">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "i" start = "4" >
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "i" start = "4">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Definition List</title>
</head>
<body>
<dl>
<dt><b>HTML</b></dt>
<dd>This stands for Hyper Text Markup Language</dd>
<dt><b>HTTP</b></dt>
<dd>This stands for Hyper Text Transfer Protocol</dd>
</dl>
</body>
</html>
Hyperlinks allow visitors to navigate between Web sites by clicking on words, phrases,
and images. Thus you can create hyperlinks using text or images available on a
webpage.
Linking Documents
A link is specified using HTML tag <a>. This tag is called anchor tag and anything
between the opening <a> tag and the closing </a> tag becomes part of the link and a
Page 69 of 141
user can click that part to reach to the linked document. Following is the simple syntax to
use <a> tag.
Example
Let's try following example which links https://www.tutorialspoint.com at your page −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
</head>
<body>
<p>Click following link</p>
<a href = "https://www.tutorialspoint.com" target =
"_self">Tutorials Point</a>
</body>
</html>
_blank
1
Opens the linked document in a new window or tab.
_self
2
Opens the linked document in the same frame.
_parent
3
Opens the linked document in the parent frame.
Page 70 of 141
_top
4
Opens the linked document in the full body of the window.
targetframe
5
Opens the linked document in a named targetframe.
Example
Try following example to understand basic difference in few options given for target
attribute.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
<base href = "https://www.tutorialspoint.com/">
</head>
<body>
<p>Click any of the following links</p>
<a href = "/html/index.htm" target = "_blank">Opens in New</a> |
<a href = "/html/index.htm" target = "_self">Opens in Self</a> |
<a href = "/html/index.htm" target = "_parent">Opens in
Parent</a> |
<a href = "/html/index.htm" target = "_top">Opens in Body</a>
</body>
</html>
Example
Page 71 of 141
Following example makes use of <base> tag to specify base URL and later we can use
relative path to all the links instead of giving complete URL for every link.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
<base href = "https://www.tutorialspoint.com/">
</head>
<body>
<p>Click following link</p>
<a href = "/html/index.htm" target = "_blank">HTML Tutorial</a>
</body>
</html>
Note − The name attribute deprecated in HTML5. Do not use this attribute.
Use id and title attribute instead.
First create a link to the place where you want to reach with-in a webpage and name it
using <a...> tag as follows −
Second step is to create a hyperlink to link the document and place where you want to
reach −
Download Links
You can create text link to make your PDF, or DOC or ZIP files downloadable. This is very
simple; you just need to give complete URL of the downloadable file as follows −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
</head>
<body>
<a href = "https://www.tutorialspoint.com/page.pdf">Download PDF
File</a>
</body>
</html>
For example, if you want make a Filename file downloadable from a given link then its
syntax will be as follows.
#!/usr/bin/perl
# Open the target file and list down its content as follows
open( FILE, "<FileName" );
Note − For more detail on PERL CGI programs, go through tutorial PERL and CGI.
Example
It's simple to use an image as hyperlink. We just need to use an image inside hyperlink
at the place of text as shown below −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Image Hyperlink Example</title>
</head>
<body>
<p>Click following link</p>
<a href = "https://www.tutorialspoint.com" target = "_self">
<img src = "/images/logo.png" alt = "Tutorials Point" border =
"0"/>
</a>
</body>
</html>
This was the simplest way of creating hyperlinks using images. Next we will see how we
can create Mouse-Sensitive Image Links.
Mouse-Sensitive Images
The HTML and XHTML standards provides a feature that lets you embed many different
links inside a single image. You can create different links on the single image based on
Page 74 of 141
different coordinates available on the image. Once different links are attached to
different coordinates, we can click different parts of the image to open target documents.
Such mouse-sensitive images are known as image maps.
Client-side image maps − This is created with the usemap attribute of the
<img> tag, along with corresponding <map> and <area> tags.
When ismap is used, the href attribute of the containing <a> tag must contain the URL
of a server application like a cgi or PHP script etc. to process the incoming request based
on the passed coordinates.
The coordinates of the mouse position are screen pixels counted from the upper-left
corner of the image, beginning with (0,0). The coordinates, preceded by a question
mark, are added to the end of the URL.
For example, if a user clicks 20 pixels over and 30 pixels down from the upper-left corner
of the following image −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>ISMAP Hyperlink Example</title>
</head>
<body>
<p>Click following link</p>
Page 75 of 141
</html>
Then the browser sends the following search parameters to the web server which can be
processed by ismap.cgi script or map file and you can link whatever documents you
like to these coordinates −
/cgi-bin/ismap.cgi?20,30
This way you can assign different links to different coordinates of the image and when
those coordinates are clicked, you can open corresponding linked document. To learn
more about ismap attribute, you can check HTML ismap Attribute
Note − You will learn CGI programming when you will study Perl
programming. You can write your script to process these passed coordinates
using PHP or any other script as well. For now, let's concentrate on learning
HTML and later you can revisit this section.
The image that is going to form the map is inserted into the page using the <img /> tag
as a normal image, except it carries an extra attribute called usemap. The value of the
usemap attribute is the value which will be used in a <map> tag to link map and image
tags. The <map> along with <area> tags define all the image coordinates and
corresponding links.
The <area> tag inside the map tag, specifies the shape and the coordinates to define the
boundaries of each clickable hotspot available on the image. Here's an example from the
image map −
Open Compiler
Page 76 of 141
<!DOCTYPE html>
<html>
<head>
<title>USEMAP Hyperlink Example</title>
</head>
<body>
<p>Search and click the hotspot</p>
<img src = /images/html.gif alt = "HTML Map" border = "0" usemap
= "#html"/>
<!-- Create Mappings -->
</html>
Coordinate System
The actual value of coords is totally dependent on the shape in question. Here is a
summary, to be followed by detailed examples −
rect = x1 , y1 , x2 , y2
x1 and y1 are the coordinates of the upper left corner of the rectangle; x2 and y2
are the coordinates of the lower right corner.
circle = xc , yc , radius
xc and yc are the coordinates of the center of the circle, and radius is the circle's
radius. A circle centered at 200,50 with a radius of 25 would have the attribute
coords = "200,50,25"
poly = x1 , y1 , x2 , y2 , x3 , y3 , ... xn , yn
The various x-y pairs define vertices (points) of the polygon, with a "line" being
drawn from one point to the next point. A diamond-shaped polygon with its top
Page 77 of 141
point at 20,20 and 40 pixels across at its widest points would have the attribute
coords = "20,20,40,40,20,60,0,40".
All coordinates are relative to the upper-left corner of the image (0,0). Each shape has a
related URL. You can use any image software to know the coordinates of different
positions.
You can have another option to facilitate people to send you emails. One option could be
to use HTML forms to collect user data and then use PHP or CGI script to send an email.
A simple example, check our Contact Us Form. We take user feedback using this form
and then we are using one CGI program which is collecting this information and sending
us email to the one given email ID.
Note − You will learn about HTML Forms in HTML Forms and you will learn about CGI in
our another tutorial Perl CGI Programming.
This code will generate the following link which you can use to send email.
Send Email
Now, if a user clicks this link, it launches one Email Client (like Lotus Notes, Outlook
Express etc. ) installed on your user's computer. There is another risk to use this option
to send email because if user do not have email client installed on their computer then it
would not be possible to send email.
Default Settings
Page 78 of 141
You can specify a default email subject and email body along with your email address.
Following is the example to use default subject and body.
This code will generate the following link which you can use to send email.
Send Feedback
HTML - Frames
HTML frames are used to divide your browser window into multiple sections where each
section can load a separate HTML document. A collection of frames in the browser
window is known as a frameset. The window is divided into frames in a similar way the
tables are organized: into rows and columns.
Disadvantages of Frames
There are few drawbacks with using frames, so it's never recommended to use frames in
your webpages −
Some smaller devices cannot cope with frames often because their screen is not
big enough to be divided up.
Sometimes your page will be displayed differently on different computers due to
different screen resolution.
The browser's back button might not work as the user hopes.
There are still few browsers that do not support frame technology.
Creating Frames
To use frames on a page we use <frameset> tag instead of <body> tag. The
<frameset> tag defines, how to divide the window into frames. The rows attribute of
<frameset> tag defines horizontal frames and cols attribute defines vertical frames.
Each frame is indicated by <frame> tag and it defines which HTML document shall open
into the frame.
Page 79 of 141
Note − The <frame> tag deprecated in HTML5. Do not use this element.
Example
Following is the example to create three horizontal frames −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Frames</title>
</head>
<noframes>
<body>Your browser does not support frames.</body>
</noframes>
</frameset>
</html>
Example
Let's put the above example as follows, here we replaced rows attribute by cols and
changed their width. This will create all the three frames vertically −
Open Compiler
<!DOCTYPE html>
<html>
Page 80 of 141
<head>
<title>HTML Frames</title>
</head>
<noframes>
<body>Your browser does not support frames.</body>
</noframes>
</frameset>
</html>
cols
Specifies how many columns are contained in the frameset and the size of
each column. You can specify the width of each column in one of the four ways
−
Absolute values in pixels. For example, to create three vertical frames, use
cols = "100, 500, 100".
A percentage of the browser window. For example, to create three vertical
1 frames, use cols = "10%, 80%, 10%".
Using a wildcard symbol. For example, to create three vertical frames, use
cols = "10%, *, 10%". In this case wildcard takes remainder of the window.
As relative widths of the browser window. For example, to create three vertical
frames, use cols = "3*, 2*, 1*". This is an alternative to percentages. You can
use relative widths of the browser window. Here the window is divided into
sixths: the first column takes up half of the window, the second takes one
third, and the third takes one sixth.
rows
This attribute works just like the cols attribute and takes the same values, but
2 it is used to specify the rows in the frameset. For example, to create two
horizontal frames, use rows = "10%, 90%". You can specify the height of each
row in the same way as explained above for columns.
Page 81 of 141
border
3 This attribute specifies the width of the border of each frame in pixels. For
example, border = "5". A value of zero means no border.
frameborder
This attribute specifies whether a three-dimensional border should be
4
displayed between frames. This attribute takes value either 1 (yes) or 0 (no).
For example frameborder = "0" specifies no border.
framespacing
This attribute specifies the amount of space between frames in a frameset.
5
This can take any integer value. For example framespacing = "10" means
there should be 10 pixels spacing between each frames.
src
This attribute is used to give the file name that should be loaded in the frame.
1
Its value can be any URL. For example, src = "/html/top_frame.htm" will load
an HTML file available in html directory.
name
This attribute allows you to give a name to a frame. It is used to indicate
which frame a document should be loaded into. This is especially important
2
when you want to create links in one frame that load pages into an another
frame, in which case the second frame needs a name to identify itself as the
target of the link.
frameborder
This attribute specifies whether or not the borders of that frame are shown; it
3
overrides the value given in the frameborder attribute on the <frameset> tag
if one is given, and this can take values either 1 (yes) or 0 (no).
marginwidth
This attribute allows you to specify the width of the space between the left
4
and right of the frame's borders and the frame's content. The value is given in
pixels. For example marginwidth = "10".
marginheight
This attribute allows you to specify the height of the space between the top
5
and bottom of the frame's borders and its contents. The value is given in
pixels. For example marginheight = "10".
Page 82 of 141
noresize
By default, you can resize any frame by clicking and dragging on the borders
6
of a frame. The noresize attribute prevents a user from being able to resize
the frame. For example noresize = "noresize".
scrolling
This attribute controls the appearance of the scrollbars that appear on the
7
frame. This takes values either "yes", "no" or "auto". For example scrolling =
"no" means it should not have scroll bars.
longdesc
This attribute allows you to provide a link to another page containing a long
8
description of the contents of the frame. For example longdesc =
"framedescription.htm"
So you must place a <body> element inside the <noframes> element because the
<frameset> element is supposed to replace the <body> element, but if a browser does
not understand <frameset> element then it should understand what is inside the
<body> element which is contained in a <noframes> element.
You can put some nice message for your user having old browsers. For example, Sorry!!
your browser does not support frames. as shown in the above example.
Let's see following example where a test.htm file has following code −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Target Frames</title>
</head>
Page 83 of 141
<frameset cols = "200, *">
<frame src = "/html/menu.htm" name = "menu_page" />
<frame src = "/html/main.htm" name = "main_page" />
<noframes>
<body>Your browser does not support frames.</body>
</noframes>
</frameset>
</html>
Here, we have created two columns to fill with two frames. The first frame is 200 pixels
wide and will contain the navigation menu bar implemented by menu.htm file. The
second column fills in remaining space and will contain the main part of the page and it
is implemented by main.htm file. For all the three links available in menu bar, we have
mentioned target frame as main_page, so whenever you click any of the links in menu
bar, available link will open in main page.
Open Compiler
<!DOCTYPE html>
<html>
</html>
Page 84 of 141
Following is the content of main.htm file −
Open Compiler
<!DOCTYPE html>
<html>
</html>
Now you can try to click links available in the left panel and see the result. The
targetattribute can also take one of the following values −
_self
1
Loads the page into the current frame.
_blank
2
Loads a page into a new browser window. Opening a new window.
_parent
3 Loads the page into the parent window, which in the case of a single frameset
is the main browser window.
_top
4
Loads the page into the browser window, replacing any current frames.
targetframe
5
Loads the page into a named targetframe.
HTML - Iframes
You can define an inline frame with HTML tag <iframe>. The <iframe> tag is not
somehow related to <frameset> tag, instead, it can appear anywhere in your document.
The <iframe> tag defines a rectangular region within the document in which the browser
can display a separate document, including scrollbars and borders. An inline frame is
used to embed another document within the current HTML document.
Page 85 of 141
The src attribute is used to specify the URL of the document that occupies the inline
frame.
Example
Following is the example to show how to use the <iframe> −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Iframes</title>
</head>
<body>
<p>Document content goes here...</p>
</html>
src
This attribute is used to give the file name that should be loaded in the frame.
1
Its value can be any URL. For example, src = "/html/top_frame.htm" will load
an HTML file available in html directory.
name
This attribute allows you to give a name to a frame. It is used to indicate
which frame a document should be loaded into. This is especially important
2
when you want to create links in one frame that load pages into an another
frame, in which case the second frame needs a name to identify itself as the
target of the link.
frameborder
This attribute specifies whether or not the borders of that frame are shown; it
3
overrides the value given in the frameborder attribute on the <frameset> tag
if one is given, and this can take values either 1 (yes) or 0 (no).
marginwidth
This attribute allows you to specify the width of the space between the left
4
and right of the frame's borders and the frame's content. The value is given in
pixels. For example marginwidth = "10".
marginheight
This attribute allows you to specify the height of the space between the top
5
and bottom of the frame's borders and its contents. The value is given in
pixels. For example marginheight = "10".
height
6
This attribute specifies the height of <iframe>.
scrolling
This attribute controls the appearance of the scrollbars that appear on the
7
frame. This takes values either "yes", "no" or "auto". For example scrolling =
"no" means it should not have scroll bars.
longdesc
This attribute allows you to provide a link to another page containing a long
8
description of the contents of the frame. For example longdesc =
"framedescription.htm"
width
9
This attribute specifies the width of <iframe>.
HTML - Blocks
Page 87 of 141
All the HTML elements can be categorized into two categories (a) Block Level Elements
(b)Inline Elements.
Block Elements
Block elements appear on the screen as if they have a line break before and after them.
For example, the <p>, <h1>, <h2>, <h3>, <h4>, <h5>, <h6>, <ul>, <ol>, <dl>,
<pre>, <hr />, <blockquote>, and <address> elements are all block level elements.
They all start on their own new line, and anything that follows them appears on its own
new line.
Inline Elements
Inline elements, on the other hand, can appear within sentences and do not have to
appear on a new line of their own. The <b>, <i>, <u>, <em>, <strong>, <sup>,
<sub>, <big>, <small>, <li>, <ins>, <del>, <code>, <cite>, <dfn>, <kbd>, and
<var> elements are all inline elements.
Example
Following is a simple example of <div> tag. We will learn Cascading Style Sheet (CSS) in
a separate chapter but we used it here to show the usage of <div> tag −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML div Tag</title>
Page 88 of 141
</head>
<body>
<!-- First group of tags -->
<div style = "color:red">
<h4>This is first group</h4>
<p>Following is a list of vegetables</p>
<ul>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</div>
<ul>
<li>Apple</li>
<li>Banana</li>
<li>Mango</li>
<li>Strawberry</li>
</ul>
</div>
</body>
</html>
The difference between the <span> tag and the <div> tag is that the <span> tag is
used with inline elements whereas the <div> tag is used with block-level elements.
Example
Page 89 of 141
Following is a simple example of <span> tag. We will learn Cascading Style Sheet (CSS)
in a separate chapter but we used it here to show the usage of <span> tag −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML span Tag</title>
</head>
<body>
<p>This is <span style = "color:red">red</span> and this is
<span style = "color:green">green</span></p>
</body>
</html>
HTML - Backgrounds
By default, your webpage background is white in color. You may not like it, but no
worries. HTML provides you following two good ways to decorate your webpage
background.
Now let's see both the approaches one by one using appropriate examples.
Note − The bgcolor attribute deprecated in HTML5. Do not use this attribute.
Following is the syntax to use bgcolor attribute with any HTML tag.
Page 90 of 141
Example
Here are the examples to set background of an HTML tag −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Background Colors</title>
</head>
<body>
<!-- Format 1 - Use color name -->
<table bgcolor = "yellow" width = "100%">
<tr>
<td>
This background is yellow
</td>
</tr>
</table>
</html>
Following is the syntax to use background attribute with any HTML tag.
The most frequently used image formats are JPEG, GIF and PNG images.
Example
Here are the examples to set background images of a table.
Page 92 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Background Images</title>
</head>
<body>
<!-- Set table background -->
<table background = "/images/html.gif" width = "100%" height =
"100">
<tr><td>
This background is filled up with HTML image.
</td></tr>
</table>
</body>
</html>
It is suggested that while creating patterns or transparent GIF or PNG images, use the
smallest dimensions possible even as small as 1x1 to avoid slow loading.
Example
Here are the examples to set background pattern of a table −
Open Compiler
<!DOCTYPE html>
<html>
<head>
Page 93 of 141
<title>HTML Background Images</title>
</head>
<body>
<!-- Set a table background using pattern -->
<table background = "/images/pattern1.gif" width = "100%" height
= "100">
<tr>
<td>
This background is filled up with a pattern image.
</td>
</tr>
</table>
</html>
HTML - Colors
Colors are very important to give a good look and feel to your website. You can specify
colors on page level using <body> tag or you can set colors for individual tags using
bgcolor attribute.
The <body> tag has following attributes which can be used to set different colors −
Color names − You can specify color names directly like green, blue or red.
Hex codes − A six-digit code representing the amount of red, green, and blue
that makes up the color.
Color decimal or percentage values − This value is specified using the rgb( )
property.
Example
Here are the examples to set background of an HTML tag by color name −
Open Compiler
Page 95 of 141
<!DOCTYPE html>
<html>
<head>
<title>HTML Colors by Name</title>
</head>
</html>
A hexadecimal value can be taken from any graphics software like Adobe Photoshop,
Paintshop Pro or MS Paint.
Each hexadecimal code will be preceded by a pound or hash sign #. Following is a list of
few colors using hexadecimal notation.
#000000
#FF0000
#00FF00
#0000FF
Page 96 of 141
#FFFF00
#00FFFF
#FF00FF
#C0C0C0
#FFFFFF
Example
Here are the examples to set background of an HTML tag by color code in hexadecimal −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Colors by Hex</title>
</head>
</html>
Note − All the browsers does not support rgb() property of color so it is
recommended not to use it.
rgb(0,0,0)
rgb(255,0,0)
rgb(0,255,0)
rgb(0,0,255)
rgb(255,255,0)
rgb(0,255,255)
rgb(255,0,255)
rgb(192,192,192)
rgb(255,255,255)
Example
Here are the examples to set background of an HTML tag by color code using rgb()
values −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Colors by RGB code</title>
</head>
Page 98 of 141
<body text = "rgb(0,0,255)" bgcolor = "rgb(0,255,0)">
<p>Use different color code for for body and table and see the
result.</p>
</html>
HTML - Fonts
Page 100 of 141
Fonts play a very important role in making a website more user friendly and increasing
content readability. Font face and color depends entirely on the computer and browser
that is being used to view your page but you can use HTML <font> tag to add style,
size, and color to the text on your website. You can use a <basefont> tag to set all of
your text to the same size, face, and color.
The font tag is having three attributes called size, color, and face to customize your
fonts. To change any of the font attributes at any time within your webpage, simply use
the <font> tag. The text that follows will remain changed until you close with the
</font> tag. You can change one or all of the font attributes within one <font> tag.
Note −The font and basefont tags are deprecated and it is supposed to be
removed in a future version of HTML. So they should not be used rather, it's
suggested to use CSS styles to manipulate your fonts. But still for learning
purpose, this chapter will explain font and basefont tags in detail.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Setting Font Size</title>
</head>
<body>
<font size = "1">Font size = "1"</font><br />
<font size = "2">Font size = "2"</font><br />
<font size = "3">Font size = "3"</font><br />
<font size = "4">Font size = "4"</font><br />
<font size = "5">Font size = "5"</font><br />
<font size = "6">Font size = "6"</font><br />
<font size = "7">Font size = "7"</font>
</body>
Page 101 of 141
</html>
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Relative Font Size</title>
</head>
<body>
<font size = "-1">Font size = "-1"</font><br />
<font size = "+1">Font size = "+1"</font><br />
<font size = "+2">Font size = "+2"</font><br />
<font size = "+3">Font size = "+3"</font><br />
<font size = "+4">Font size = "+4"</font>
</body>
</html>
Example
Open Compiler
Page 102 of 141
<!DOCTYPE html>
<html>
<head>
<title>Font Face</title>
</head>
<body>
<font face = "Times New Roman" size = "5">Times New Roman</font>
<br />
<font face = "Verdana" size = "5">Verdana</font><br />
<font face = "Comic sans MS" size =" 5">Comic Sans MS</font><br
/>
<font face = "WildWest" size = "5">WildWest</font><br />
<font face = "Bedrock" size = "5">Bedrock</font><br />
</body>
</html>
When your page is loaded, their browser will display the first font face available. If none
of the given fonts are installed, then it will display the default font face Times New
Roman.
Note − You can check a complete list of HTML Color Name with Codes.
Page 103 of 141
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Setting Font Color</title>
</head>
<body>
<font color = "#FF00FF">This text is in pink</font><br />
<font color = "red">This text is red</font>
</body>
</html>
The <basefont> tag also takes color, size and face attributes and it will support relative
font setting by giving size a value of +1 for a size larger or −2 for two sizes smaller.
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Setting Basefont Color</title>
</head>
<body>
<basefont face = "arial, verdana, sans-serif" size = "2" color =
Page 104 of 141
"#ff0000">
<p>This is the page's default font.</p>
<h2>Example of the <basefont> Element</h2>
</html>
HTML - Forms
HTML Forms are required, when you want to collect some data from the site visitor. For
example, during user registration you would like to collect information such as name,
email address, credit card, etc.
A form will take input from the site visitor and then will post it to a back-end application
such as CGI, ASP Script or PHP script etc. The back-end application will perform required
processing on the passed data based on defined business logic inside the application.
There are various form elements available like text fields, textarea fields, drop-down
menus, radio buttons, checkboxes, etc.
The HTML <form> tag is used to create an HTML form and it has following syntax −
Form Attributes
Apart from common attributes, following is a list of the most frequently used form
attributes −
action
1
Backend script ready to process your passed data.
method
2 Method to be used to upload data. The most frequently used are GET and
POST methods.
target
3 Specify the target window or frame where the result of the script will be
displayed. It takes values like _blank, _self, _parent etc.
enctype
You can use the enctype attribute to specify how the browser encodes the
data before it sends it to the server. Possible values are −
4 application/x-www-form-urlencoded − This is the standard method most
forms use in simple scenarios.
mutlipart/form-data − This is used when you want to upload binary data in
the form of files like image, word file etc.
Note − You can refer to Perl & CGI for a detail on how form data upload works.
Clickable Buttons
Single-line text input controls − This control is used for items that require
only one line of user input, such as search boxes or names. They are created
Page 106 of 141
using HTML <input> tag.
Password input controls − This is also a single-line text input but it masks the
character as soon as a user enters it. They are also created using HTMl <input>
tag.
Multi-line text input controls − This is used when the user is required to give
details that may be longer than a single sentence. Multi-line input controls are
created using HTML <textarea> tag.
Example
Here is a basic example of a single-line text input used to take first name and last name
−
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Text Input Control</title>
</head>
<body>
<form >
First name: <input type = "text" name = "first_name" />
<br>
Last name: <input type = "text" name = "last_name" />
</form>
</body>
</html>
Attributes
Following is the list of attributes for <input> tag for creating text field.
Page 107 of 141
type
1 Indicates the type of input control and for text input control it will be set to
text.
name
2 Used to give a name to the control which is sent to the server to be
recognized and get the value.
value
3
This can be used to provide an initial value inside the control.
size
4
Allows to specify the width of the text-input control in terms of characters.
maxlength
5 Allows to specify the maximum number of characters a user can enter into the
text box.
Example
Here is a basic example of a single-line password input used to take user password −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Password Input Control</title>
</head>
<body>
<form >
User ID : <input type = "text" name = "user_id" />
<br>
Password: <input type = "password" name = "password" />
</form>
Page 108 of 141
</body>
</html>
Attributes
Following is the list of attributes for <input> tag for creating password field.
type
1 Indicates the type of input control and for password input control it will be set
to password.
name
2 Used to give a name to the control which is sent to the server to be
recognized and get the value.
value
3
This can be used to provide an initial value inside the control.
size
4
Allows to specify the width of the text-input control in terms of characters.
maxlength
5 Allows to specify the maximum number of characters a user can enter into the
text box.
Example
Here is a basic example of a multi-line text input used to take item description −
Open Compiler
<!DOCTYPE html>
<html>
<head>
Page 109 of 141
<title>Multiple-Line Input Control</title>
</head>
<body>
<form>
Description : <br />
<textarea rows = "5" cols = "50" name = "description">
Enter description here...
</textarea>
</form>
</body>
</html>
Attributes
Following is the list of attributes for <textarea> tag.
name
1 Used to give a name to the control which is sent to the server to be
recognized and get the value.
rows
2
Indicates the number of rows of text area box.
cols
3
Indicates the number of columns of text area box
Checkbox Control
Checkboxes are used when more than one option is required to be selected. They are
also created using HTML <input> tag but type attribute is set to checkbox..
Example
Open Compiler
Page 110 of 141
<!DOCTYPE html>
<html>
<head>
<title>Checkbox Control</title>
</head>
<body>
<form>
<input type = "checkbox" name = "maths" value = "on"> Maths
<input type = "checkbox" name = "physics" value = "on">
Physics
</form>
</body>
</html>
Attributes
Following is the list of attributes for <checkbox> tag.
type
1 Indicates the type of input control and for checkbox input control it will be set
to checkbox..
name
2 Used to give a name to the control which is sent to the server to be
recognized and get the value.
value
3
The value that will be used if the checkbox is selected.
checked
4
Set to checked if you want to select it by default.
Example
Here is example HTML code for a form with two radio buttons −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Radio Box Control</title>
</head>
<body>
<form>
<input type = "radio" name = "subject" value = "maths"> Maths
<input type = "radio" name = "subject" value = "physics">
Physics
</form>
</body>
</html>
Attributes
Following is the list of attributes for radio button.
type
1 Indicates the type of input control and for checkbox input control it will be set
to radio.
name
2 Used to give a name to the control which is sent to the server to be
recognized and get the value.
value
3
The value that will be used if the radio box is selected.
checked
4
Set to checked if you want to select it by default.
Page 112 of 141
Example
Here is example HTML code for a form with one drop down box
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Select Box Control</title>
</head>
<body>
<form>
<select name = "dropdown">
<option value = "Maths" selected>Maths</option>
<option value = "Physics">Physics</option>
</select>
</form>
</body>
</html>
Attributes
Following is the list of important attributes of <select> tag −
name
1 Used to give a name to the control which is sent to the server to be
recognized and get the value.
size
2
This can be used to present a scrolling list box.
Page 113 of 141
multiple
3
If set to "multiple" then allows a user to select multiple items from the menu.
value
1
The value that will be used if an option in the select box box is selected.
selected
2 Specifies that this option should be the initially selected value when the page
loads.
label
3
An alternative way of labeling options
Example
Here is example HTML code for a form with one file upload box −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>File Upload Box</title>
</head>
<body>
<form>
<input type = "file" name = "fileupload" accept = "image/*" />
</form>
</body>
Page 114 of 141
</html>
Attributes
Following is the list of important attributes of file upload box −
name
1 Used to give a name to the control which is sent to the server to be
recognized and get the value.
accept
2
Specifies the types of files that the server accepts.
Button Controls
There are various ways in HTML to create clickable buttons. You can also create a
clickable button using <input>tag by setting its type attribute to button. The type
attribute can take the following values −
submit
1
This creates a button that automatically submits a form.
reset
2 This creates a button that automatically resets form controls to their initial
values.
button
3 This creates a button that is used to trigger a client-side script when the user
clicks that button.
image
4 This creates a clickable button but we can use an image as background of the
button.
Example
Here is example HTML code for a form with three types of buttons −
Open Compiler
Page 115 of 141
<!DOCTYPE html>
<html>
<head>
<title>File Upload Box</title>
</head>
<body>
<form>
<input type = "submit" name = "submit" value = "Submit" />
<input type = "reset" name = "reset" value = "Reset" />
<input type = "button" name = "ok" value = "OK" />
<input type = "image" name = "imagebutton" src =
"/html/images/logo.png" />
</form>
</body>
</html>
Example
Here is example HTML code to show the usage of hidden control −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>File Upload Box</title>
</head>
Page 116 of 141
<body>
<form>
<p>This is page 10</p>
<input type = "hidden" name = "pagename" value = "10" />
<input type = "submit" name = "submit" value = "Submit" />
<input type = "reset" name = "reset" value = "Reset" />
</form>
</body>
</html>
You can also include a <noembed> tag for the browsers which don't recognize the
<embed> tag. You could, for example, use <embed> to display a movie of your choice,
and <noembed> to display a single JPG image if browser does not support <embed>
tag.
Example
Here is a simple example to play an embedded midi file −
<!DOCTYPE html>
<html>
<head>
<title>HTML embed Tag</title>
</head>
<body>
<embed src = "/html/yourfile.mid" width = "100%" height = "60" >
<noembed><img src = "yourimage.gif" alt = "Alternative Media"
></noembed>
</embed>
</body>
Page 117 of 141
</html>
Note −The align and autostart attributes deprecated in HTML5. Do not use
these attributes.
align
1
Determines how to align the object. It can be set to either center, left or right.
autostart
2 This boolean attribute indicates if the media should start automatically. You
can set it either true or false.
loop
3 Specifies if the sound should be played continuously (set loop to true), a
certain number of times (a positive value) or not at all (false)
playcount
4 Specifies the number of times to play the sound. This is alternate option for
loop if you are usiong IE.
hidden
5 Specifies if the multimedia object should be shown on the page. A false value
means no and true values means yes.
width
6
Width of the object in pixels
height
7
Height of the object in pixels
name
8
A name used to reference the object.
src
9
URL of the object to be embedded.
10 volume
Page 118 of 141
Controls volume of the sound. Can be from 0 (off) to 100 (full volume).
.swf files − are the file types created by Macromedia's Flash program.
.wmv files − are Microsoft's Window's Media Video file types.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML embed Tag</title>
</head>
<body>
<embed src = "/html/yourfile.swf" width = "200" height = "200" >
<noembed><img src = "yourimage.gif" alt = "Alternative Media"
></noembed>
</embed>
</body>
</html>
Background Audio
You can use HTML <bgsound> tag to play a soundtrack in the background of your
webpage. This tag is supported by Internet Explorer only and most of the other browsers
ignore this tag. It downloads and plays an audio file when the host document is first
downloaded by the user and displayed. The background sound file also will replay
whenever the user refreshes the browser.
This tag is having only two attributes loop and src. Both these attributes have same
meaning as explained above.
<!DOCTYPE html>
<html>
<head>
<title>HTML embed Tag</title>
</head>
<body>
<bgsound src = "/html/yourfile.mid">
<noembed><img src = "yourimage.gif" ></noembed>
</bgsound>
</body>
</html>
Examples - 2
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee width = "50%">This example will take only 50%
width</marquee>
</body>
</html>
Page 120 of 141
Examples - 3
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee direction = "right">This text will scroll from left to
right</marquee>
</body>
</html>
Examples - 4
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee direction = "up">This text will scroll from bottom to
up</marquee>
</body>
</html>
HTML - Header
Page 121 of 141
We have learnt that a typical HTML document will have following structure −
<head>
Document header related tags
</head>
<body>
Document body related tags
</body>
</html>
This chapter will give a little more detail about header part which is represented by HTML
<head> tag. The <head> tag is a container of various important tags like <title>,
<meta>, <link>, <base>, <style>, <script>, and <noscript> tags.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Title Tag Example</title>
</head>
<body>
<p>Hello, World!</p>
</body>
</html>
Following are few of the important usages of <meta> tag inside an HTML document −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Meta Tag Example</title>
<!-- Tag to tell robots not to index the content of a page -->
<meta name = "robots" content = "noindex, nofollow">
</head>
<body>
Page 123 of 141
<p>Hello, World!</p>
</body>
</html>
For example, all the given pages and images will be searched after prefixing the given
URLs with base URL https://www.tutorialspoint.com/ directory −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Base Tag Example</title>
<base href = "https://www.tutorialspoint.com/" />
</head>
<body>
<img src = "/images/logo.png" alt = "Logo Image"/>
<a href = "/html/index.htm" title = "HTML Tutorial"/>HTML
Tutorial</a>
</body>
</html>
But if you change base URL to something else, for example, if base URL is
https://www.tutorialspoint.com/home then image and other given links will become like
https://www.tutorialspoint.com/home/images/logo.png and
https://www.tutorialspoint.com/html/index.htm
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML link Tag Example</title>
<base href = "https://www.tutorialspoint.com/" />
<link rel = "stylesheet" type = "text/css" href =
"/css/style.css">
</head>
<body>
<p>Hello, World!</p>
</body>
</html>
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML style Tag Example</title>
<base href = "https://www.tutorialspoint.com/" />
<body>
<p class = "myclass">Hello, World!</p>
</body>
</html>
Note − To learn about how Cascading Style Sheet works, kindly check a separate tutorial
available at css
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML script Tag Example</title>
<base href = "https://www.tutorialspoint.com/" />
<body>
<input type = "button" onclick = "Hello();" name = "ok" value =
"OK" />
</body>
</html>
Page 126 of 141
Note − To learn about how JavaScript works, kindly check a separate tutorial available at
javascript
Cascading Style Sheets (CSS) provide easy and effective alternatives to specify various
attributes for the HTML tags. Using CSS, you can specify a number of style properties for
a given HTML element. Each property has a name and a value, separated by a colon (:).
Each property declaration is separated by a semi-colon (;).
Example
First let's consider an example of HTML document which makes use of <font> tag and
associated attributes to specify text color and font size −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML CSS</title>
</head>
<body>
<p><font color = "green" size = "5">Hello, World!</font></p>
</body>
</html>
We can re-write above example with the help of Style Sheet as follows −
Page 127 of 141
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML CSS</title>
</head>
<body>
<p style = "color:green; font-size:24px;" >Hello, World!</p>
</body>
</html>
External Style Sheet − Define style sheet rules in a separate .css file and then
include that file in your HTML document using HTML <link> tag.
Internal Style Sheet − Define style sheet rules in header section of the HTML
document using <style> tag.
Inline Style Sheet − Define style sheet rules directly along-with the HTML
elements using style attribute.
Let's see all the three cases one by one with the help of suitable examples.
Example
Consider we define a style sheet file style.css which has following rules −
.red {
color: red;
}
.thick {
Page 128 of 141
font-size:20px;
}
.green {
color:green;
}
Here we defined three CSS rules which will be applicable to three different classes
defined for the HTML tags. I suggest you should not bother about how these rules are
being defined because you will learn them while studying CSS. Now let's make use of the
above external CSS file in our following HTML document −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML External CSS</title>
<link rel = "stylesheet" type = "text/css" href =
"/html/style.css">
</head>
<body>
<p class = "red">This is red</p>
<p class = "thick">This is thick</p>
<p class = "green">This is green</p>
<p class = "thick green">This is thick and green</p>
</body>
</html>
Rules defined in internal style sheet overrides the rules defined in an external CSS file.
Example
Page 129 of 141
Let's re-write above example once again, but here we will write style sheet rules in the
same HTML document using <style> tag −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Internal CSS</title>
<body>
<p class = "red">This is red</p>
<p class = "thick">This is thick</p>
<p class = "green">This is green</p>
<p class = "thick green">This is thick and green</p>
</body>
</html>
Rules defined inline with the element overrides the rules defined in an external CSS file
as well as the rules defined in <style> element.
Page 130 of 141
Example
Let's re-write above example once again, but here we will write style sheet rules along
with the HTML elements using style attribute of those elements.
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Inline CSS</title>
</head>
<body>
<p style = "color:red;">This is red</p>
<p style = "font-size:20px;">This is thick</p>
<p style = "color:green;">This is green</p>
<p style = "color:green;font-size:20px;">This is thick and
green</p>
</body>
</html>
HTML - JavaScript
A script is a small piece of program that can add interactivity to your website. For
example, a script could generate a pop-up alert box message, or provide a dropdown
menu. This script could be written using JavaScript or VBScript.
You can write various small functions, called event handlers using any of the scripting
language and then you can trigger those functions using HTML attributes.
Now-a-days, only JavaScript and associated frameworks are being used by most of the
web developers, VBScript is not even supported by various major browsers.
You can keep JavaScript code in a separate file and then include it wherever it's needed,
or you can define functionality inside HTML document itself. Let's see both the cases one
by one with suitable examples.
External JavaScript
Page 131 of 141
If you are going to define a functionality which will be used in various HTML documents
then it's better to keep that functionality in a separate JavaScript file and then include
that file in your HTML documents. A JavaScript file will have extension as .js and it will
be included in HTML files using <script> tag.
Example
Consider we define a small function using JavaScript in script.js which has following
code −
function Hello() {
alert("Hello, World");
}
Now let's make use of the above external JavaScript file in our following HTML document
−
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Javascript External Script</title>
<script src = "/html/script.js" type = "text/javascript"/>
</script>
</head>
<body>
<input type = "button" onclick = "Hello();" name = "ok" value =
"Click Me" />
</body>
</html>
Internal Script
You can write your script code directly into your HTML document. Usually we keep script
code in header of the document using <script> tag, otherwise there is no restriction and
you can put your source code anywhere in the document but inside <script> tag.
Page 132 of 141
Example
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>JavaScript Internal Script</title>
<base href = "https://www.tutorialspoint.com/" />
<body>
<input type = "button" onclick = "Hello();" name = "ok" value =
"Click Me" />
</body>
</html>
Event Handlers
Event handlers are nothing but simply defined functions which can be called against any
mouse or keyboard event. You can define your business logic inside your event handler
which can vary from a single to 1000s of line code.
Following example explains how to write an event handler. Let's write one simple function
EventHandler() in the header of the document. We will call this function when any user
brings mouse over a paragraph.
Open Compiler
<!DOCTYPE html>
<html>
Page 133 of 141
<head>
<title>Event Handlers Example</title>
<base href = "https://www.tutorialspoint.com/" />
<body>
<p onmouseover = "EventHandler();">Bring your mouse here to see
an alert</p>
</body>
</html>
JavaScript Example:
<script type = "text/JavaScript">
<!--
document.write("Hello JavaScript!");
//-->
</script>
VBScript Example:
<script type = "text/vbscript">
<!--
document.write("Hello VBScript!")
'-->
</script>
JavaScript Example:
<script type = "text/JavaScript">
<!--
document.write("Hello JavaScript!");
//-->
</script>
VBScript Example:
<script type = "text/vbscript">
<!--
document.write("Hello VBScript!")
'-->
</script>
Note that you can still override the default by specifying a language within the script tag.
HTML - Layouts
A webpage layout is very important to give better look to your website. It takes
considerable time to design a website's layout with great look and feel.
Now-a-days, all modern websites are using CSS and JavaScript based framework to
come up with responsive and dynamic websites but you can create a good layout using
simple HTML tables or division tags in combination with other formatting tags. This
Page 135 of 141
chapter will give you few examples on how to create a simple but working layout for your
webpage using pure HTML and its attributes.
Example
For example, the following HTML layout example is achieved using a table with 3 rows
and 2 columns but the header and footer column spans both columns using the colspan
attribute −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>HTML Layout using Tables</title>
</head>
<body>
<table width = "100%" border = "0">
<tr>
<td colspan = "2" bgcolor = "#b5dcb3">
<h1>This is Web Page Main title</h1>
</td>
</tr>
<tr valign = "top">
<td bgcolor = "#aaa" width = "50">
<b>Main Menu</b><br />
HTML<br />
PHP<br />
PERL...
</td>
</table>
</body>
</html>
Example
Here is an example to create three column layout −
Open Compiler
<!DOCTYPE html>
<html>
<head>
<title>Three Column HTML Layout</title>
</head>
<body>
<table width = "100%" border = "0">
<table>
</body>
</html>
Although we can achieve pretty nice layouts with HTML tables, but tables weren't really
designed as a layout tool. Tables are more suited to presenting tabular data.
Note − This example makes use of Cascading Style Sheet (CSS), so before
understanding this example you need to have a better understanding on how CSS works.
Example
Here we will try to achieve same result using <div> tag along with CSS, whatever you
have achieved using <table> tag in previous example.
Open Compiler
Page 138 of 141
<!DOCTYPE html>
<html>
<head>
<title>HTML Layouts using DIV, SPAN</title>
</head>
<body>
<div style = "width:100%">
</div>
Page 139 of 141
</body>
</html>
You can create better layout using DIV, SPAN along with CSS. For more information on
CSS, please refer to CSS Tutorial.
TOP TUTORIALS
Python Tutorial
Java Tutorial
C++ Tutorial
C Programming Tutorial
C# Tutorial
PHP Tutorial
R Tutorial
HTML Tutorial
CSS Tutorial
JavaScript Tutorial
SQL Tutorial
TRENDING TECHNOLOGIES
Git Tutorial
Ethical Hacking Tutorial
Docker Tutorial
Kubernetes Tutorial
DSA Tutorial
Spring Boot Tutorial
SDLC Tutorial
Unix Tutorial
CERTIFICATIONS
Page 140 of 141
Business Analytics Certification
Online Go Compiler
Online C Compiler
Online C++ Compiler
Online C# Compiler
Online PHP Compiler
Online MATLAB Compiler
Online Bash Terminal
Tutorials Point is a leading Ed Tech company striving to provide the best learning material on
technical and non-technical subjects.