HTML Tutorials1
HTML Tutorials1
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Italic Text
Anything that appears within <i>...</i> element is displayed in italicized as shown below:
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
This will produce following result:
Underlined Text
Anything that appears within <u>...</u> element, is displayed with underline as shown
below:
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
This will produce following result:
Monospaced Font
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Inserted Text
Anything that appears within <ins>...</ins> element is displayed as inserted text.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</html>
Deleted Text
Anything that appears within <del>...</del> element, is displayed as deleted text.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Grouping Content
The <div> and <span> elements allow you to group together several elements to create
sections or subsections of a page.
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<a href="/index.htm">HOME</a> |
<a href="/about/contact_us.htm">CONTACT</a> |
<a href="/about/index.htm">ABOUT</a>
</div>
<h5>Content Articles</h5>
</div>
</body>
</html>
CONTENT ARTICLES
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
This is the example of span tag and the div tag alongwith CSS
These tags are commonly used with CSS to allow you to attach a style to a section of a page.
The phrase tags have been designed for specific purposes, though they are displayed in a similar way as
other basic tags like <b>, <i>, <pre>, and <tt>, you have seen in previous chapter. This chapter will take
you through all the important phrase tags, so let's start seeing them one by one.
Emphasized Text
Anything that appears within <em>...</em> element is displayed as emphasized text.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Marked Text
Anything that appears with-in <mark>...</mark> element, is displayed as marked with yellow ink.
Example
<!DOCTYPE html>
<html>
<head>
<body>
</body>
</html>
Strong Text
Anything that appears within <strong>...</strong> element is displayed as important text.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
<title>Text Abbreviation</title>
</head>
<body>
</body>
</html>
Acronym Element
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
<!DOCTYPE html>
<html>
<head>
<title>Acronym Example</title>
</head>
<body>
</body>
</html>
Text Direction
The <bdo>...</bdo> element stands for Bi-Directional Override and it is used to override the current text
direction.
Example
<!DOCTYPE html>
<html>
<head>
<title>Text Direction Example</title>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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.
Example
<!DOCTYPE html>
<html>
<head>
<title>Blockquote Example</title>
</head>
<body>
<p>The following description of XHTML is taken from the W3C Web site:</p>
<blockquote>XHTML 1.0 is the W3C's first Recommendation for XHTML, following on from earlier work
on HTML 4.01, HTML 4.0, HTML 3.2 and HTML 2.0.</blockquote>
</body>
</html>
The following description of XHTML is taken from the W3C Web site:
XHTML 1.0 is the W3C's first Recommendation for XHTML, following on from earlier work on HTML 4.01,
HTML 4.0, HTML 3.2 and HTML 2.0.
Short Quotations
The <q>...</q> element is used when you want to add a double quote within a sentence.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
<title>Citations Example</title>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p><code>document.write("<var>user-name</var>")</code></p>
</body>
</html>
document.write("user-name")
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Address Text
The <address>...</address> element is used to contain any address.
Example
<!DOCTYPE html>
<html>
<head>
<title>Address Example</title>
</head>
<body>
</body>
</html>
This will produce following result:
HTML lets you specify metadata - additional important information about a document in a variety
of ways. The META elements can be used to include name/value pairs describing properties of
the HTML document, such as author, expiry date, a list of keywords, document author etc.
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.
Attribute Description
http- Used for http response message headers. For example http-equiv
equiv can be 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.
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Hello HTML5!
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
</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.
<!DOCTYPE html>
<html>
<head>
</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
Following is an example of redirecting current page to another page after 5 seconds. If you want
to redirect page immediately then do not specifycontent attribute.
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Setting Cookies
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 infromation 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
Following is an example of redirecting current page to another page after 5 seconds. If you want
to redirect page immediately then do not specifycontent attribute.
<!DOCTYPE html>
<html>
<head>
</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.
<html>
<head>
</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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
To serve the static page with traditional Chinese characters, the webpage must contain a
<meta> tag to set Big5 encoding:
<!DOCTYPE html>
<html>
<head>
</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
<!DOCTYPE html>
<html>
<body>
</html>
This will produce following result without displaying the content given as a part of comments:
Example
Here given comment is a valid comment and will be wiped off by the browser.
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</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.
<!DOCTYPE html>
<html>
<head>
</head>
<body>
< !-- This is not a valid comment -->
</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
<!DOCTYPE html><html>
<head>
<title>Multiline Comments</title>
</head>
<body>
<!--
-->
</body>
</html>
Example
<!DOCTYPE html><html>
<head>
<title>Conditional Comments</title>
<!--[if IE 6]>
<![endif]-->
</head>
<body>
</body>
</html>
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.
Example
<!DOCTYPE html><html>
<head>
</head>
<body>
</body>
</html>
But if you are not using IE, then it will produce following result:
Example
<!DOCTYPE html><html>
<head>
<script>
<!--
document.write("Hello World!")
//-->
</script>
</head>
<body>
<p>Hello , World!</p>
</body>
</html>
Hello World!
Hello , World!
Commenting Style Sheets
Though you will learn using style sheets with HTML in a separate tutorial, but here you must
make a note that if you are using Casecading Style Sheet (CSS) in your HTML code then it is
recommended to put that style sheet code inside proper HTML comments so that old browsers
can work properly.
Example
<!DOCTYPE html><html>
<head>
<style>
<!--
.example {
//-->
</style>
</head>
<body>
</body>
</html>
Hello , World!
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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
The alt attribute is a mandatory attribute which specifies an alternate text for an image, if the
image cannot be displayed.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<body>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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.
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.
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Tables</title>
</head>
<body>
<table border="1">
<tr>
</tr>
<tr>
</tr>
</table>
</body>
</html>
Here 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.
Example
<!DOCTYPE html>
<html>
<head>
</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>
Name Salary
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<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>
Name Salary
Ramesh Raman 5000
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<table border="1">
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
</table>
</body>
</html>
Row 3 Cell 1
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
</table>
</body>
</html>
Row 3 Cell 1
Here is an example of using background attribute. Here we will use an image available in
/images directory.
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
</table>
</body>
</html>
This will produce following result. Here background image did not apply to table's header.
Row 3 Cell 1
Table Height and Width
You can set a table width and height using width and height attrubutes. You can specify table
width or height in terms of pixels or in terms of percentage of available screen area.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr>
</tr>
<tr>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr>
</tr>
<tr>
</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 pagesor groups of data. But
it is notable that <thead> and <tfoot> tags should appear before <tbody>
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Table</title>
</head>
<body>
<thead>
<tr>
</tr>
</thead>
<tfoot>
<tr>
</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.
<!DOCTYPE html>
<html>
<head>
<title>HTML Table</title>
</head>
<body>
<tr>
<td>
<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>
Name Salary
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.
<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.
An unordered list is a collection of related items that have no special order or sequence. This list
is created by using HTML <ul> tag. Each item in the list is marked with a bullet.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ul>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Beetroot
Ginger
Potato
Radish
You can use type attribute for <ul> tag to specify the type of bullet you like. By default it is a
disc. Following are the possible options:
<ul type="square">
<ul type="disc">
<ul type="circle">
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ul type="square">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Beetroot
Ginger
Potato
Radish
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ul type="disc">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
This will produce following result:
Beetroot
Ginger
Potato
Radish
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ul type="circle">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
o Beetroot
o Ginger
o Potato
o Radish
HTML Ordered Lists
If you are required to put your items in a numbered list instead of bulleted then HTML ordered
list will be used. This list is created by using<ol> tag. The numbering starts at one and is
incremented by one for each successive ordered list element tagged with <li>.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ol>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
1. Beetroot
2. Ginger
3. Potato
4. Radish
You can use type attribute for <ol> tag to specify the type of numbering you like. By default it is
a number. Following are the possible options:
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ol type="1">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
1. Beetroot
2. Ginger
3. Potato
4. Radish
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ol type="I">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
I. Beetroot
II. Ginger
III. Potato
IV. Radish
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ol type="i">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
i. Beetroot
ii. Ginger
iii. Potato
iv. Radish
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ol type="A">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
A. Beetroot
B. Ginger
C. Potato
D. Radish
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<ol type="a">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
a. Beetroot
b. Ginger
c. Potato
d. Radish
You can use start attribute for <ol> tag to specify the starting point of numbering you need.
Following are the possible options:
<ol type="1" start="4"> - Numerals starts with 4.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
iv. Beetroot
v. Ginger
vi. Potato
vii. Radish
HTML Definition Lists
HTML and XHTML support a list style which is called definition listswhere entries are listed like
in a dictionary or encyclopedia. The definition list is the ideal way to present a glossary, list of
terms, or other name/value list.
<dt> - A term
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<dl>
<dt><b>HTML</b></dt>
<dt><b>HTTP</b></dt>
</dl>
</body>
</html>
HTML
HTTP
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 user can click
that part to reach to the linked document. Following is the simple syntax to use <a> tag.
Example
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
</head>
<body>
</body>
</html>
This will produce following result, where you can click on the link generated Tutorials
Point to reach to the home page of Tutorials Point.
Tutorials Point
The target Attribute
We have used target attribute in our previous example. This attribute is used to specify the
location where linked document is opened. Following are possible options:
Option Description
Example
Try following example to understand basic difference in few options given for target
attribute.
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
<base href="http://www.tutorialspoint.com/">
</head>
<body>
</html>
This will produce following result, where you can click on different links to understand the
difference between various options given for target attribute.
Example
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.
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
<base href="http://www.tutorialspoint.com/">
</head>
<body>
</body>
</html>
This will produce following result, where you can click on the link generated HTML
Tutorial to reach to the HTML tutorial.
HTML Tutorial
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:
This will produce following link, where you can click on the link generatedGo to the Top to
reach to the top of the HTML Text Link tutorial.
Go to the Top
Example
Save the following in test.htm and open it in any web browser to see
howlink, alink and vlink attributes work.
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
<base href="http://www.tutorialspoint.com/">
</head>
<body alink="#54A250" link="#040404" vlink="#F40633">
</body>
</html>
This will produce following result. Just check color of the link before clicking on it, next
check its color when you activate it and when the link has been visited.
HTML Tutorial
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:
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
</head>
</body>
</html>
This will produce following link and will be used to download a file.
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
print("$buffer");
We have seen how to create hypertext link using text and we also learnt how to use images in
our webpages. Now we will learn how to use images to create hyperlinks.
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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</a>
</body>
</html>
This will produce following result, where you can click on the images to reach to the home page
of Tutorials Point.
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 provide a feature that lets you embed many different links
inside a single image. You can create different links on the single image based on different
coordinates available on the image. Once different are links 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.
Sserver-side image maps - This is enabled by the ismap attribute of the <img> tag and
requires access to a server and related image-map processing applications.
Client-side image maps - This is created with the usemapattribute 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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</a>
</body>
</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 How to use Image ismap?
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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<map name="html">
<area shape="circle"
<area shape="rect"
</map>
</body>
</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; x 2 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 point at 20,20
and 40 pixels across at its widest points would have the
attributecoords="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.
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. Therows attribute of <frameset> tag defines
horizontal frames and colsattribute defines vertical frames. Each frame is indicated by <frame>
tag and it defines which HTML document shall open into the frame.
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Frames</title>
</head>
<frameset rows="10%,80%,10%">
<noframes>
<body>
</body>
</noframes>
</frameset>
</html>
Let's put above example as follows, here we replaced rows attribute by cols and changed their
width. This will create all the three frames vertically:
<!DOCTYPE html>
<html>
<head>
<title>HTML Frames</title>
</head>
<frameset cols="25%,50%,25%">
<noframes>
<body>
</body>
</noframes>
</frameset>
</html>
Attribute Description
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 four ways:
rows This attribute works just like the cols attribute and takes the
same values, but 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.
border This attribute specifies the width of the border of each frame in
pixels. For example border="5". A value of zero means no
border.
Attribute Description
src This attribute is used to give the file name that should be loaded
in the frame. Its value can be any URL. For example,
src="/html/top_frame.htm" will load an HTML file available in
html directory.
frameborder This attribute specifies whether or not the borders of that frame
are shown; it 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 and right of the frame's borders and the frame's
content. The value is given in pixels. For example
marginwidth="10".
marginheigh This attribute allows you to specify the height of the space
t between the top and bottom of the frame's borders and its
contents. The value is given in pixels. For example
marginheight="10".
noresize By default you can resize any frame by clicking and dragging on
the borders of a frame. The noresize attribute prevents a user
from being able to resize the frame. For example
noresize="noresize".
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:
<!DOCTYPE html>
<html>
<head>
</head>
<noframes>
<body>
</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 menubar 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.htmfile. For all the three links available in menubar, we have mentioned target frame
as main_page, so whenever you click any of the links in menubar, available link will open in
main_page.
<!DOCTYPE html>
<html>
<body bgcolor="#4a7d49">
</body>
</html>
Following is the content of main.htm file:
<!DOCTYPE html>
<html>
<body bgcolor="#b5dcb3">
<h3>This is main page and content from any link will be displayed here.</h3>
</body>
</html>
Now you can try to click links available in the left panel and see the result. The target attribute
can also take one of the following values:
Option Description
_parent Loads the page into the parent window, which in the case of a
single frameset is the main browser window.
_top Loads the page into the browser window, replacing any current
frames.
HTML Blocks
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:
<!DOCTYPE html>
<html>
<head>
<body>
<div style="color:red">
<ul>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</div>
<div style="color:green">
<ul>
<li>Apple</li>
<li>Banana</li>
<li>Mango</li>
<li>Strawberry</li>
</ul>
</div>
</body>
</html>
Ginger
Potato
Radish
Apple
Banana
Mango
Strawberry
The difference between the <span> tag and the <div> tag is that the <span> tag is used with
inline elements where as the <div> tag is used with block-level elements.
Example
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:
<!DOCTYPE html>
<html>
<head>
</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.
<tagname bgcolor="color_value"...>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr><td>
</td></tr>
</table>
<tr><td>
</td></tr>
</table>
<tr><td>
</td></tr>
</table>
</body>
</html>
Note: The background attribute is deprecated and it is recommended to use Style Sheet for
background setting.
The most frequently used image formats are JPEG, GIF and PNG images.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr><td>
</td></tr>
</table>
</body>
</html>
This will produce following result:
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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr><td>
</td></tr>
</table>
<tr><td>
</td></tr>
</table>
</body>
</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:
vlink - sets a color for visited links - that is, for linked text that you have already clicked
on.
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.
Here is the list of W3C Standard 16 Colors names and it is recommended to use them.
EXAMPLE
Here are the examples to set background of an HTML tag by color name:
<!DOCTYPE html>
<html>
<head>
</head>
<p>Use different color names for for body and table and see the result.</p>
<table bgcolor="black">
<tr>
<td>
</td>
</tr>
</table>
</body>
</html>
A hexadecimal is a 6 digit representation of a color. The first two digits(RR) represent a red
value, the next two are a green value(GG), and the last are the blue value(BB).
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
#FFFF00
#00FFFF
#FF00FF
#C0C0C0
#FFFFFF
EXAMPLE
Here are the examples to set background of an HTML tag by color code in hexadecimal:
<!DOCTYPE html>
<html>
<head>
</head>
<p>Use different color hexa for for body and table and see the result.</p>
<table bgcolor="#000000">
<tr>
<td>
</td>
</tr>
</table>
</body>
</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:
<!DOCTYPE html>
<html>
<head>
</head>
<p>Use different color code for for body and table and see the result.</p>
<table bgcolor="rgb(0,0,0)">
<tr>
<td>
</td>
</tr>
</table>
</body>
</html>
Fonts play 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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Font size="1"
Font size="2"
Font size="3"
Font size="4"
Font size="5"
Font size="6"
Font size="7"
Relative Font Size
You can specify how many sizes larger or how many sizes smaller than the preset font size
should be. You can specify it like <font size="+n"> or <font size="-n">
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Font size="-1"
Font size="+1"
Font size="+2"
Font size="+3"
Font size="+4"
Setting Font Face
You can set font face using face attribute but be aware that if the user viewing the page doesn't
have the font installed, they will not be able to see it. Instead user will see the default font face
applicable to the user's computer.
Example
<!DOCTYPE html>
<html>
<head>
<title>Font Face</title>
</head>
<body>
</body>
</html>
<font face="arial,helvetica">
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.
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</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
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</font></p>
</font></p>
</body>
</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>
Form Attributes
Apart from common attributes, following is a list of the most frequently used form attributes:
Attribut Description
e
method Method to be used to upload data. The most frequently used are
GET and POST methods.
target 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:
Note: You can refer to Perl & CGI for a detail on how form data upload works.
Checkboxes Controls
Hidden Controls
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 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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form >
<br>
</form>
</body>
</html>
First name:
Last name:
Attributes
Following is the list of attributes for <input> tag for creating text field.
Attribute Description
type Indicates the type of input control and for text input control it will be
set to text.
name Used to give a name to the control which is sent to the server to be
recognized and get the value.
value This can be used to provide an initial value inside the control.
Example
Here is a basic example of a single-line password input used to take user password:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form >
<br>
</form>
</body>
</html>
User ID :
Password:
Attributes
Following is the list of attributes for <input> tag for creating password field.
Attribute Description
type Indicates the type of input control and for password input control it
will be set to password.
name Used to give a name to the control which is sent to the server to be
recognized and get the value.
value This can be used to provide an initial value inside the control.
Example
Here is a basic example of a multi-line text input used to take item description:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form>
</textarea>
</form>
</body>
</html>
Description :
Attributes
Attribut Description
e
name Used to give a name to the control which is sent to the server to be
recognized and get the value.
Example
<!DOCTYPE html>
<html>
<head>
<title>Checkbox Control</title>
</head>
<body>
<form>
</form>
</body>
</html>
Maths Physics
Attributes
Attribut Description
e
type Indicates the type of input control and for checkbox input control it
will be set to checkbox.
name Used to give a name to the control which is sent to the server to be
recognized and get the value.
Example
Here is example HTML code for a form with two radio buttons:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form>
</form>
</body>
</html>
Maths Physics
Attributes
type Indicates the type of input control and for checkbox input control it
will be set to radio.
name Used to give a name to the control which is sent to the server to be
recognized and get the value.
value The value that will be used if the radio box is selected.
Example
Here is example HTML code for a form with one drop down box
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form>
<select name="dropdown">
<option value="Physics">Physics</option>
</select>
</form>
</body>
</html>
This will produce following result:
Maths
Attributes
Attribut Description
e
name Used to give a name to the control which is sent to the server to be
recognized and get the value.
multiple If set to "multiple" then allows a user to select multiple items from
the menu.
Attribut Description
e
value The value that will be used if an option in the select box box is
selected.
selected Specifies that this option should be the initially selected value when
the page loads.
Here is example HTML code for a form with one file upload box:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form>
</form>
</body>
</html>
Attributes
Attribut Description
e
name Used to give a name to the control which is sent to the server to be
recognized and get the value.
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 tobutton. The type attribute can take the
following values:
Type Description
submi This creates a button that automatically submits a form.
t
reset This creates a button that automatically resets form controls to their
initial values.
button This creates a button that is used to trigger a client-side script when
the user clicks that button.
Example
Here is example HTML code for a form with three types of buttons:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form>
</form>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form>
</form>
</body>
</html>
This is page 10
Submit Reset
HTML Marquees
An HTML marquee is a scrolling piece of text displayed either horizontally across or vertically
down your webpage depending on the settings. This is created by using HTML <marquees>
tag.
Note: The HTML <marquee> tag may not be supported by various browsers so its not
recommended to rely on this tag, instead you can use Javascript and CSS to create such effects.
Syntax
</marquee>
Following is the list of important attributes which can be used with <marquee> tag.
Attribute Description
Examples - 1
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
<html>
<head>
</head>
<body>
</body>
</html>
Examples - 3
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
<html>
<head>
</head>
<body>
</body>
</html>
HTML Header
e have learnt that a typical HTML document will have following structure:
<html>
<head>
</head>
<body>
</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.
The HTML <title> Tag
The HTML <title> tag is used for specifying the title of the HTML document. Following is an
example to give a title to an HTML document:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>Hello, World!</p>
</body>
</html>
Hello, World!
Following are few of the important usages of <meta> tag inside an HTML document:
<!DOCTYPE html>
<html>
<head>
<!-- Tag to tell robots not to index the content of a page -->
</head>
<body>
<p>Hello, World!</p>
</body>
</html>
Hello, World!
For example, all the given pages and images will be searched after prefixing the given URLs
with base URL http://www.tutorialspoint.com/ directory:
<!DOCTYPE html>
<html>
<head>
<title>HTML Base Tag Example</title>
</head>
<body>
</body>
</html>
HTML Tutorial
But if you change base URL to something else, for example, if base URL is
http://www.tutorialspoint.com/home then image and other given links will become like
http://www.tutorialspoint.com/home/images/logo.png and
http://www.tutorialspoint.com/home/html/index.htm
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>Hello, World!</p>
</body>
</html>
Hello, World!
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
.myclass{
background-color: #aaa;
padding: 10px;
</style>
</head>
<body>
</body>
</html>
Hello, World!
Note: To learn about how Cascading Style Sheet works, kindly check a separate tutorial
available at http://www.tutorialspoint.com/css
The HTML <script> Tag
The HTML <script> tag is used to include either external script file or to define internal script for
the HTML document. Following is an example where we are using Javascript to define a simple
Javascript function:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function Hello(){
alert("Hello, World");
</script>
</head>
<body>
</body>
</html>
This will produce following result, where you can try to click on the given button:
Cascading Style Sheets (CSS) describe how documents are presented on screens, in print, or
perhaps how they are pronounced. W3C has actively promoted the use of style sheets on the
Web since the Consortium was founded in 1994.
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:
<!DOCTYPE html>
<html>
<head>
<title>HTML CSS</title>
</head>
<body>
</body>
</html>
We can re-write above example with the help of Style Sheet as follows:
<!DOCTYPE html>
<html>
<head>
<title>HTML CSS</title>
</head>
<body>
</body>
</html>
Hello, World!
You can use CSS in three ways in your HTML document:
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.
If you need to use your style sheet to various pages, then its always recommended to define a
common style sheet in a separate file. A cascading style sheet file will have extension
as .css and it will be included in HTML files using <link> tag.
Example
Consider we define a style sheet file style.css which has following rules:
.red{
color: red;
.thick{
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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
This is red
This is thick
This is green
If you want to apply Style Sheet rules to a single document only then you can include those
rules in header section of the HTML document using <style> tag.
Rules defined in internal style sheet overrides the rules defined in an external CSS file.
Example
Let's re-write above example once again, but here we will write style sheet rules in the same
HTML document using <style> tag:
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
.red{
color: red;
}
.thick{
font-size:20px;
.green{
color:green;
</style>
</head>
<body>
</body>
</html>
This is red
This is thick
This is green
You can apply style sheet rules directly to any HTML element using styleattribute of the relevant
tag. This should be done only when you are interested to make a particular change in any
HTML element only.
Rules defined inline with the element overrides the rules defined in an external CSS file as well
as the rules defined in <style> element.
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.
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
This is red
This is thick
This is green
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 whereever 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
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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
This will produce following result, where you can try to click on the given button:
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.
Example
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function Hello(){
alert("Hello, World");
</script>
</head>
<body>
</body>
</html>
This will produce following result, where you can try to click on the given button:
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.
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function EventHandler(){
</script>
</head>
<body>
</body>
</html>
Now this will produce following result. Bring your mouse over this line and see the result:
Although most (if not all) browsers these days support Javascript, but still some older browsers
don't. If a browser doesn't support JavaScript, instead of running your script, it would display the
code to the user. To prevent this, you can simply place HTML comments around the script as
shown below.
JavaScript Example:
<script type="text/javascript">
<!--
document.write("Hello Javascript!");
//-->
</script>
VBScript Example:
<script type="text/vbscript">
<!--
document.write("Hello VBScript!")
'-->
</script>
You can also provide alternative info to the users whose browsers don't support scripts and for
those users who have disabled script option their browsers. You can do this using
the <noscript> tag.
JavaScript Example:
<script type="text/javascript">
<!--
document.write("Hello Javascript!");
//-->
</script>
VBScript Example:
<script type="text/vbscript">
<!--
document.write("Hello VBScript!")
'-->
</script>
There may be a situation when you will include multiple script files and ultimately using multiple
<script> tags. You can specify a default scripting language for all your script tags. This saves
you from specifying the language everytime you use a script tag within the page. Below is the
example:
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 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:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr>
</td>
</tr>
<tr valign="top">
PHP<br />
PERL...
</td>
</td>
</tr>
<tr>
<center>
</center>
</td>
</tr>
</table>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<tr valign="top">
HTML<br />
PHP<br />
PERL...
</td>
</td>
HTML<br />
PHP<br />
PERL...
</td>
</tr>
<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.
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div style="width:100%">
</div>
<div><b>Main Menu</b></div>
HTML<br />
PHP<br />
PERL...
</div>
</div>
<div><b>Right Menu</b></div>
HTML<br />
PHP<br />
PERL...
</div>
<div style="background-color:#b5dcb3;clear:both">
<center>
</center>
</div>
</div>
</body>
</html>
HTML
PHP
PERL...
HTML
PHP
P
Following tags have been introduced in older versions of HTML but all the tags marked with are part of
HTML-5.