HTML Tutorial
HTML Tutorial
www.phptpoint.com
HTML Introduction
Before your begin:
Before you begin, it's important that you know Windows or Unix. A working knowledge of
Windows or Unix makes it much easier to learn HTML.
You should be familiar with:
Introducing HTML:
HTML stands for Hypertext Markup Language, and it is the most widely used language to write
Web Pages. As its name suggests, HTML is a markup language.
Hypertext refers to the way in which Web pages (HTML documents) are linked
together. When you click a link in a Web page, you are using hypertext.
Markup Language describes how HTML works. With a markup language, you 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.
All you need to do to use HTML is to learn what type of markup to use to get the results you
want.
Creating an HTML document is easy. To begin coding HTML you need only two things: a simpletext editor and a web browser. Notepad is the most basic of simple-text editors and you will
probably code a fair amount of HTML with it.
Here are the simple steps to create a baisc HTML document:
You have basic HTML document now, to see some result put the following code in title and body
tags.
<html>
<head>
<title>This is document title</title>
</head>
<body>
<h1>This is a heading</h1>
<p>Document description goes here.....</p>
</body>
</html>
Now you have created one HTML page and you can use a Web Browser to open this HTML file
to see the result. Hope you understood that Web Pages are nothing but they are simple HTML
files with some content which can be rendered using Web Browsers.
Here <html>, <head>,...<p>, <h1> etc. are called HTML tags. HTML tags are building blocks
of an HTML document nd we will learn all the HTML tags in subsequent chapters.
NOTE: One HTML file can have extension as .htm or .html. So you can use either of them
based on your comfort.
The <head>...</head> elements, which contain information about the document such
as title of the document, author of the document etc. Information inside this tag does
not display outside.
The <body>...</body> elements, which contain the real content of the document that
you see on your screen.
HTML language is a markup language and we use many tags to markup text. In the above
example you have seen <html>, <body> etc. are called HTML tags or HTML elements.
Every tag consists of a tag name, sometimes followed by an optional list of tag attributes , all
placed between opening and closing brackets (< and >). The simplest tag is nothing more than
a name appropriately enclosed in brackets, such as <head> and <i>. More complicated tags
contain one or more attributes , which specify or modify the behaviour of the tag.
According to the HTML standard, tag and attribute names are not case-sensitive. There's no
difference in effect between <head>, <Head>, <HEAD>, or even <HeaD>; they are all
equivalent. But with XHTML, case is important: all current standard tag and attribute names are
in lowercase.
HTML is Forgiving?
A very good quality associated with all the browsers is that they would not give any error if you
have not put any HTML tag or attribute properly. They will just ignore that tag or attribute and
will apply only correct tags and attributes before displaying the result.
We can not say, HTML is forgiving because this is just a markup language and required to
format documents.
Remember that before an opening <html> tag, an XHTML document can contain the optional
XML declaration, and it should always contain a DOCTYPE declaration indicating which version of
XHTML it uses.
Now we will explain each of these tags one by one. In this tutorial you will find the terms
element and tag are used interchangeably.
<head>
<body>
As such, start and end HTML tags enclose all the other HTML tags you use to describe the Web
page.
Each <head> element should contain a <title> element indicating the title of the document,
although it may also contain any combination of the following elements, in any order:
The <base> tag is used to areate a "base" url for all links on the page.
The <object> tag is designed to include images, JavaScript objects, Flash animations,
MP3 files, QuickTime movies and other components of a page.
The <link> tag is used to link to an external file, such as a style sheet or JavaScript file.
The <style> tag is used to include CSS rules inside the document.
The <script> tag is used to include JAVAScript or VBScript inside the document
The <meta> tag includes information about the document such as keywords and a
description, which are particularly helpful for search applications.
Example:
Following is the example of head tag.
<head>
<title>HTML Basic tags</title>
<meta name="Keywords" content="HTML, Web Pages" />
<meta name="description" content="HTML Basic Tags" />
<base href="" />
<link rel="stylesheet" type="text/css" href="tp.css" />
<script type="text/javascript">
_uacct = "UA-232293"; urchinTracker();
</script>
</head>
Therefore it is important to use a title that really describes the content of your site. The <title>
element should contain only the text for the title and it may not contain any other elements.
Example:
Here is the example of using title tag.
<head>
<title>HTML Basic tags</title>
</head>
The <body> element appears after the <head> element and contains the part of the Web page
that you actually see in the main browser window, which is sometimes referred to as body
content.
A <body> element may contain anything from a couple of paragraphs under a heading to more
complicated layouts containing forms and tables.
Most of what you will be learning in this and the following five chapters will be written between
the opening <body> tag and closing </body> tag.
Example:
Here is the example of using body tag.
<body>
<p>This is a paragraph tag.</p>
</body>
<html>
<head>
<title>HTML Basic tags</title>
<meta name="Keywords" content="HTML, Web Pages" />
<meta name="description" content="HTML Basic Tags" />
<base href="" />
<link rel="stylesheet" type="text/css" href="tp.css" />
<script type="text/javascript">
_uacct = "UA-232293"; urchinTracker();
</script>
</head>
<body>
<p>This is a paragraph tag.</p>
</body>
</html>
To Become more comfortable
Metadata provided by using meta tag is a very important part of the web. It can assist search
engines in finding the best match when a user performs a search. Search engines will often look
at any metadata attached to a page - especially keywords - and rank it higher than another
page with less relevant metadata, or with no metadata at all.
Description
Name
content
scheme
htt
peq
uiv
Used for http response message headers. For example http-equiv can be used
to refresh the page or to set a cookie. Values include content-type, expires,
refresh and set-cookie.
NOTE: Core attributes for all the elements are discussed in next chapter.
Specifying Keywords:
We specify keywords which will be used by the search engine to search a web page. So using
following tag you can specify important keywords related to your page.
<head>
<meta name="keywords" content="HTML, meta tags, metadata" />
</head>
Document Description:
This is again important information and many search engine use this information as well while
searching a web page. So you should give an appropriate description of the page.
<head>
<meta name="description" content="Learn about Meta Tags." />
</head>
<head>
<meta name="revised" content="Tutorialspoint, 6/12/2006" />
</head>
Document Refreshing:
You can specify a duration after which your web page will keep refreshing. If you want your
page keep refreshing after every 10 seconds then use the following syntax.
<head>
<meta http-equiv="refresh" content="10" />
</head>
Page Redirection:
You can specify a page redirection using Meta Tag. Following is an example of redirecting
current page to another page. You can specify a duration after which page will be redirected.
<head>
<meta http-equiv="refresh"
content="10; url=" />
</head>
If you don't provide a duration then page will be redirected immediately.
Setting Cookies:
You can use Meta Tag to store cookies on client side later information can be used by then Web
Server to track a site visitor.
<head>
<meta http-equiv="cookie" content="userid=xyz; expires=Wednesday, 08-Aug-00 23:59:59 GMT; />
</head>
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.
<head>
<meta name="author" content="Mahnaz Mohtashim" />
</head>
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.
HTML Attributes
Attributes are another important part of HTML markup. An attribute is used to define the
characteristics of an element and is placed inside the element's opening tag. All attributes are
made up of two parts: a name and a value:
The name is the property you want to set. For example, the <font> element in the
example carries an attribute whose name is face, which you can use to indicate which
typeface you want the text to appear in.
The value is what you want the value of the property to be. The first example was
supposed to use the Arial typeface, so the value of the face attribute is Arial.
The value of the attribute should be put in double quotation marks, and is separated from the
name by the equals sign. You can see that a color for the text has been specified as well as the
typeface in this <font> element:
Core Attributes:
The four core attributes that can be used on the majority of HTML elements (although not all)
are:
id
title
class
style
The id Attribute:
The id attribute can be used to uniquely identify any element within a page ( or style sheet ).
There are two primary reasons that you might want to use an id attribute on an element:
We will discuss style sheet in separate tutorial. For now, the id attribute could be used to
distinguish between two paragraph elements, like so:
Begin with a letter (A.Z or a.z) and can then be followed by any number of letters,
digits (0.9), hyphens, underscores, colons, and periods.
Remain unique within that document; no two attributes may have the same value
within that HTML document.
The title attribute gives a suggested title for the element. They syntax for the title attribute is
similar as explained for id attribute:
The behavior of this attribute will depend upon the element that carries it, although it is often
displayed as a tooltip or while the element is loading.
For example:
<h4 title="Hello HTML!">Titled Heading Tag Example</h4>
Now try to bring your cursor over "Titled Heading Tag Example" and see the result.
Internationalization Attributes:
There are three internationalization attributes, which are available to most (although not all)
XHTML elements.
dir
lang
xml:lang
Meaning
Left to right (the default value)
rtl
Right to left (for languages such as Hebrew or Arabic that are read right to left)
Example:
<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 text's direction for
just the content of that tag.
<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 HTML's tags.
Attribute
10 | P a
ge
Options
Function
align
valign
bgcolor
numeric, hexidecimal,
RGB values
backgroun
d
URL
id
User Defined
class
User Defined
width
Numeric Value
height
Numeric Value
title
User Defined
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.
11 | P a
ge
<h1>This
<h2>This
<h3>This
<h4>This
<h5>This
<h6>This
is
is
is
is
is
is
heading
heading
heading
heading
heading
heading
1</h1>
2</h2>
3</h3>
4</h4>
5</h5>
6</h6>
This is heading 1
This is heading 2
This is heading 3 This is heading 4
This is heading 5
This is heading 6
Hello<br />
You come most carefully upon your hour.<br /> Thanks<br />
Mahnaz
Hello
You come most carefully upon your hour. Thanks
Mahnaz
Nonbreaking Spaces:
Suppose you were to use the phrase "12 Angry Men." Here you would not want a browser to
split the "12" and "Angry" across two lines:
A good example of this technique appears in the movie "12 Angry Men."
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"
paragraph, you would use something similar to the following code:
<p>A good example of this technique appears in the movie "12 Angry Men."</p>
Soft Hyphens:
Occasionally, you will want to allow a browser to hyphenate long words to better justify a
paragraph. For example, consider the following code and its resulting output.
<p style="text-align: justify;"> The morbid fear of the number 13, or triskaidekaphobia, has plagued some important
In cases where you want a client browser to be able to hyphenate a word if necessary, use the
soft hyphen entity (­) to specify where a word should be hyphenated. So above example
should be written as follows:
<p style="text-align: justify;"> Example for soft hyphen - The morbid fear of the number 13, or tri­skai­deka
Example for soft hyphen - The morbid fear of the number 13, or triskaidekaphobia, has plagued some important histo
<pre>
function testFunction( strText ){ alert (strText)
}
</pre>
Presentational Tags:
If you use a word processor, you are 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.
superscript
typeface.
subscript
typeface.
The <span> element, on the other hand, can be used to group inline elements only. So, if you
had a part of a sentence or paragraph you wanted to group together you could use the <span>
element.
<div><p>This is the example of <span style="color:green">span tag</span> and the <span style="color:purple">d
These tags are commonly used with CSS to allow you to attach a style to a section of a page.
<p>This chapter covers marking up text in <acronym title="Extensible Hypertext Markup Language">XHTML</acron
20 | P a
ge
At present, the major browsers do not change the appearance of the content of the <acronym>
element.
<blockquote> XHTML 1.0 is the W3C's first Recommendation for XHTML, following on from earlier work on HTML 4.01
XHTML 1.0 is the W3C's first Recommendation for XHTML, following on from earlier work on HTML 4.01, HTML 4.0, HTM
You can use the cite attribute on the <blockquote> element to indicate the source of the quote.
<p>The following description of XHTML is taken from the W3C Web site:</p>
<blockquote cite="> XHTML 1.0 is the W3C's first Recommendation for XHTML, following on from earlier work on HTM
21 | P a
ge
The <q> element can also carry the cite attribute. The value should be a URL pointing to the
source of the quote.
<p><code>document.write("<var>user-name</var>")</code></p>
This will produce following result:
document.write("user-name")
The elements which we have not discussed till now, will be discussed in subsequent chapters.
HTML Comments
Comments are piece of code which is ignored by any web browser. It is good practice to
comment your 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.
HTML Comment lines are indicated by the special beginning tag <!-- and ending tag --> placed
at the beginning and end of EVERY line to be treated as a comment.
Comments do not nest, and the double-dash sequence "--" may not appear inside a comment
except as part of the closing --> tag. You must also make sure that there are no spaces in the
start-of-comment string.
For example: Given line is a valid comment in HTML
Multiline Comments:
You have seen how to comment a single line in HTML. You can comment multiple lines by the
special beginning tag <!-- and ending tag --> placed before the first line and end of the lastline
to be treated as a comment.
For example:
Conditional Comments :
Conditional comments only work in Explorer on Windows, and are thus excellently suited to give
special instructions meant only for Explorer on Windows. They are supported from Explorer 5
onwards, and it is even possible to distinguish between 5.0, 5.5 and 6.0.
Conditional comments work as follows:
<!--[if IE 6]>
Special instructions for IE 6 here
<![endif]-->
Their basic structure is the same as an HTML comment (<!-- -->). Therefore all other
browsers will see them as normal comments and will ignore them entirely.
Explorer Windows, though, has been programmed to recognize the special <!--[if IE]>
syntax, resolves the if and parses the content of the conditional comment as if it were
normal page content.
Since conditional comments use the HTML comment structure, they can only be
included in HTML files, and not in CSS files.
<script>
<!-document.write("Hello World!")
//-->
</script>
Similarly if you are using Casecading Style Sheet in your HTML code then it is recommended to
put that style sheet code inside proper HTML Comments to make old browser works properly.
For example:
<style>
<!-img{
border:0px;
}
//-->
</style>
NOTE: To become familiar with JAVA Script and Cascading Style Sheet you need to refer
different tutorial.
HTML Fonts
Font face and color depends entirely on the computer and browser that is being used to view
your page. But the <font> tag is used to add style, size, and color to the text on your site. 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 page, simply use the <font> tag.
The text that follows will remain changed until you close with the </font> tag. You can change
any or all of the font attributes at the one time, by including all the required changes within the
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 it should not be used. Its is suggested to use css styles to
manipulate your font.
Font Size:
You can set the size of your font with size attribute. The range of accepted values is from
1(smallest) to 7(largest). The default size of a font is 3.
Example:
<font
<font
<font
<font
<font
<font
<font
size="1">Font
size="2">Font
size="3">Font
size="4">Font
size="5">Font
size="6">Font
size="7">Font
size="1"</font>
size="2"</font>
size="3"</font>
size="4"</font>
size="5"</font>
size="6"</font>
size="7"</font>
Font size="2"
Font size="3"
Font size="4"
Font size="5"
Font size="6"
Font size="7"
SPECIFY THE RELATIVE FONT SIZE. <font size="+n"> or <font size="-n">:
You can specify how many sizes larger or how many sizes smaller than the preset font size
should be.
Example:
<font
<font
<font
<font
<font
size="-1">Font size="-1"</font>
size="+1">Font size="+1"</font>
size="+2">Font size="+2"</font>
size="+3">Font size="+3"</font>
size="+4">Font size="+4"</font>
Font size="-1"
Font size="+1"
Font size="+2"
Font size="+3"
Font size="+4"
Font Face:
You can set any font you like 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 they will default to Times
New Roman of your font with size attribute. See below few examples on using different font face
Example:
<font
<font
<font
<font
<font face="arial,helvetica">
<font face="Lucida Calligraphy,Comic Sans MS,Lucida Console>
When your page is loaded, their browser will display the first font face that it has available. If
none of your selections are installed....then it will display the default font face Times New
Roman.
Font Color:
You can set any font color you like using color attribute. You can specify the color that you want
by either the color name or hexadecimal code for that color. Check a complete list of HTML
Example:
Example:
some
is
darkgray
a
text
courier
As you can see, the default font now takes on the properties specified in the <basefont>
element. It is red, size 2, and uses the Arial typeface.
The paragraph after the <h2> element uses a font size two sizes larger than the default size
and is gray text, whereas the following paragraph uses a font one size smaller than the default
font. You can also see that the color of this font is black (overriding the default).
HTML Images
Images are very important to beautify as well as to depicts many concepts on your web page.
Its is true that one single image is worth than thuasands of words. So as a Web Developer you
should have clear understanding on how to use images in your web pages.
Image Attributes:
Following are most frequently used attributes for <img> tag.
width: sets width of the image. This will have a value like 10 or 20%etc.
height: sets height of the image. This will have a value like 10 or 20% etc.
border: sets a border around the image. This will have a value like 1 or 2 etc.
src: specifies URL of the image file.
alt: this is an alternate text which will be displayed if image is missing.
align: this sets horizontal alignment of the image and takes value either left, right or
center.
valign: this sets vertical alignment of the image and takes value either top, bottom or
center.
hspace: horizontal space around the image. This will have a value like 10 or 20%etc.
vspace: vertical space around the image. This will have a value like 10 or 20%etc.
name: name of the image with in the document.
id: id of the image with in the document.
style: this will be used if you are using CSS.
title: specifies a text title. The browser, perhaps flashing the title when the mouse
passes over the link.
ismap and usemap: These attributes for the <img> tag tell the browser that the
image is a special mouse-selectable visual map of one or more hyperlinks, commonly
known as an image map. We will see how to use these attributes in Image Links
chapter.
A Simple Example:
<img sralt="HTML Tutorial" />
30 | P a
ge
Remember that all the images will have a border by default. In our examples its not showing
because our global style sheet has set img {border:0px;} which means that no border will be
displayed till it is mentioned explicitly.
You can remove an image border by setting border="0" or through CSS by setting img
{border:0px;}.
The image will appear along the right hand side of the paragraph. As you can see this is very nice for adding a little ey
<p>The left and right image-alignment values tell the browser to place an image against the left or right margin, resp
The image will appear along the right hand side of the paragraph. As you can see this is very nice for adding a little
The left and right image-alignment values tell the browser to place an image against the left or right margin, re
then renders subsequent document content in the remaining portion of the flow adjacent to the image. The net resu
31 | P a
ge
Example 2:
You can use vspace or hspace attributes if you want to keep some distance between text and
image. Let us revise above example:
<p>This is the first paragraph that appears above the paragraph with the image!</p>
<p><img srvspace="10" hspace="15" width="75" height="75" alt="HTML Tutorial" align="right">
The image will appear along the right hand side of the paragraph. As you can see this is very nice for adding a little ey
<p>The left and right image-alignment values tell the browser to place an image against the left or right margin, resp
The image will appear along the right hand side of the paragraph. As you can see this is very nice for adding a li
The left and right image-alignment values tell the browser to place an image against the left or right margin, r
browser then renders subsequent document content in the remaining portion of the flow adjacent to the ima
Anchor Attributes:
Following are most frequently used attributes for <a> tag.
href: specifies the URL of the target of a hyperlink. Its value is any valid document
URL, absolute or relative, including a fragment identifier or a JavaScript code fragment.
target: specify where to display the contents of a selected hyperlink. If set to "_blank"
then a new window will be opened to display the loaded page, if set to "_top" or
"_parent" then same window will be used to display the loaded document, if set to
"_self" then loads the new page in current window. By default its "_self".
name & id: attributes places a label within a document. When that label is used in a
link to that document, it is the equivalent of telling the browser to goto that label.
event: attributes like onClick, onMouseOver etc. are used to trigger any Javascript ot
VBscript code.
title: attribute lets you specify a title for the document to which you are linking. The
value of the attribute is any string, enclosed in quotation marks. The browser might use
it when displaying the link, perhaps flashing the title when the mouse passes over the
link.
accesskey: attribute attribute provides a keyboard shortcut that can be used to
activate a link. For example, you could make the T key an access key so that when the
user presses either the Alt or Ctrl key on his keyboard (depending on his operating
system) along with the T key, the link gets activated.
A Simple Example:
<a hre" target="_blank" >TP Home</a> |
<a hre" target="_self" >AMROOD Home</a> |
<a hre" target="_top" >Change Images Home</a>
This will produce following result, Click and come back to proceed with rest of the tutorial:
<head>
<base href="">
</head>
So now if you will use <a href="/html/index.htm" then it will be considered as <a
href="http://www.phptpoint.com/html".
Now you have a place where you can reach. To reach to this place use the following code within this document anywhere:
<a href="/html/html_text_links.htm#top">Go to the Top</a>
This will produce following link and you try using this link to reach to the top of this page:
NOTE: Here we are using relative path. You can give complete URL and then # and then link
name eg. http://www.tutorialspoint.com/html/html_text_links.htm#top
You can use this type of URL in any other page to reach directly to a particular section.
a:link
{color:#900B09; background-color:transparent}
a:visited {color:#900B09; background-color:transparent}
a:active{color:#FF0000; background-color:transparent} a:hover{color:#FF0000; background-color:transp
You can refer to Style Sheet Tutorial for a complete understanding on CSS.
Otherwise you can use <body> tag to set link colors. Here is the syntax.
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:
This will produce following link and will be used to download a file.
You can not make an image download able until you follow the following procedure.
#!/usr/bin/perl
# HTTP Header
print "Content-Type:application/octet-stream; name=\"FileName\"\r\n"; print "Content-Disposition: at
# Actual File Content will go hear. open( FILE, "<FileName" ); while(read(FILE, $buffer, 100) )
{
print("$buffer");
}
This was the simpletest 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 the same image. Clicking different areas of the image causes the browser to link to
different target documents. Such mouse-sensitive images known as image maps.
There are two ways to create image maps:
A server-side image maps: is enabled by the ismap attribute for the <img> tag and
requires access to a server and related image-map processing applications.
A client-side image maps: is created with the usemap attribute for the <img> tag,
along with corresponding <map> and <area> tags.
Then the browser sends the following search parameters to the HTTP server which can be
processed by cgi script or map file and you can link whatever you like to these coordinates:
/cgi-bin/logo.map?50,30
NOTE: Converting the coordinates into a specific document is handled by the server side
application, either cgi programme or special map files provided by seb server.
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. Therefore, a rectangle which goes from 10,5 to
20,25 would have the attribute coords="10,5,20,25". A rectangle which defines the
upper-left quarter of an image might use coords="0,0,50%,50%".
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"; one centered at the image's center and having a diameter of half
the image would be defined by coords="50%,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 attribute
HTML Tables
Tables are very useful to arrange in HTML and they are used very frequently by almost all web
developers. Tables are just like spreadsheets and they are made up of rows and columns.
You will create a table in HTML/XHTML by using <table> tag. Inside <table> element the table
is written out row by row. A row is contained inside a <tr> tag . which stands for table row. And
each cell is then written inside the row element using a <td> tag . which stands for table data.
Example:
<table border="1">
<tr>
<td>Row 1, Column
<td>Row 1, Column
</tr>
<tr>
<td>Row 2, Column
<td>Row 2, Column
</tr>
</table>
1</td>
2</td>
1</td>
2</td>
Row 1, Column
1
Row 2, Column
1
Row 1,
Column 2
Row 2,
Column 2
NOTE: In the above example border is an attribute of <table> and it will put border across all
the cells. If you do not need a border then you cal use border="0". The border attribute and
other attributes also mentione din this session are deprecated and they have been replaced by
CSS. So it is recommended to use CSS instead of using any attribute directly.
<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>
This will produce following result. You can see its making heading as a bold one:
Name
Sala
ry
Ramesh
Raman
500
0
Shabbir
Hussein
700
0
NOTE: Each cell must, however, have either a <td> or a <th> element in order for the table to
display correctly even if that element is empty.
Name
Sala
ry
Ramesh
Raman
5000
Shabbir
Hussein
7000
<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>
This will produce following result:
Column
1
Row 1 Cell
1
Column
2
Column
3
Row 1
Cell 2
Row 1
Cell 3
Row 2
Cell 2
Row 2
Cell 3
Row 3 Cell 1
Tables Backgrounds
You can set table background using of the following two ways:
Using bgcolor attribute - You can set background color for whole table or just for one
cell.
Using background attribute - You can set background image for whole table or just for
one cell.
40 | P a
ge
Column
1
Row 1 Cell
1
Column
3
Column
2
Row 1
Cell 2
Row 1
Cell 3
Row 2
Cell 2
Row 2
Cell 3
Row 3 Cell 1
Column
1
Row 1 Cell
1
Column
3
Column
2
Row 1
Cell 2
Row 1
Cell 3
Row 2
Cell 2
Row 2
Cell 3
Row 3 Cell 1
41 | P a
ge
Row 1, Column 1
Row 1, Column 2
Row 2, Column 1
Row 2, Column 2
<table border="1">
<caption>This is the caption</caption>
<tr>
<td>row 1, column 1</td><td>row 1, columnn 2</td>
</tr>
</table>
This will produce following result:
row 1,
columnn 2
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>
Cell 2
Cell 3
Cell 4
Cell 3
Cell 4
Cell 2
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>.
Following is the example of using another table and other tags inside a table cell.
<table border="1">
<tr>
<td>
<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>
</td>
<td>
<ul>
<li>This is another cell</li>
<li>Using list inside this cell</li>
</ul>
</td>
</tr>
<tr>
<td>Row 2, Column 1</td>
<td>Row 2, Column 2</td>
</tr>
</table>
This will produce following result:
Name
Sala
ry
Ramesh
Raman
500
0
Shabbir
Hussein
700
0
Row 2, Column 1
Row 2, Column 2
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.
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 make
up the color.
Color decimal or percentage values: : This value is specified using the rgb( )
property.
Black
Gray
Silver
White
Yellow
Lime
Aqua
Fuchsia
Red
Green
Blue
Purple
Maroon
Olive
Navy
Teal
Color HEX
#000000
#FF0000
#00FF00
#0000FF
#FFFF00
#00FFFF
#FF00FF
#C0C0C0
#FFFFFF
Color RGB
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)
000033
000066
000099
0000CC
0000FF
003300
003333
003366
003399
0033CC
0033FF
006600
006633
006666
006699
0066CC
0066FF
009900
009933
009966
009999
0099CC
0099FF
00CC00
00CC33
00CC66
00CC99
00CCCC
00CCFF
00FF00
00FF33
00FF66
00FF99
00FFCC
00FFFF
330000
330033
330066
330099
3300CC
3300FF
333300
333333
333366
333399
3333CC
3333FF
336600
336633
336666
336699
3366CC
3366FF
339900
339933
339966
339999
3399CC
3399FF
33CC00
33CC33
33CC66
33CC99
33CCCC
33CCFF
33FF00
33FF33
33FF66
33FF99
33FFCC
33FFFF
660000
660033
660066
660099
6600CC
6600FF
663300
663333
663366
663399
6633CC
6633FF
666600
666633
666666
666699
6666CC
6666FF
669900
669933
669966
669999
6699CC
6699FF
66CC00
66CC33
66CC66
66CC99
66CCCC
66CCFF
66FF00
66FF33
66FF66
66FF99
66FFCC
66FFFF
990000
990033
990066
990099
9900CC
9900FF
993300
993333
993366
993399
9933CC
9933FF
996600
996633
996666
996699
9966CC
9966FF
999900
999933
999966
999999
9999CC
9999FF
99CC00
99CC33
99CC66
99CC99
99CCCC
99CCFF
99FF00
99FF33
99FF66
99FF99
99FFCC
99FFFF
CC0000
CC0033
CC0066
CC0099
CC00CC
CC00FF
CC3300
CC3333
CC3366
CC3399
CC33CC
CC33FF
CC6600
CC6633
CC6666
CC6699
CC66CC
CC66FF
CC9900
CC9933
CC9966
CC9999
CC99CC
CC99FF
CCCC00
CCCC33
CCCC66
CCCC99
CCCCCC
CCCCFF
CCFF00
CCFF33
CCFF66
CCFF99
CCFFCC
CCFFFF
FF0000
FF0033
FF0066
FF0099
FF00CC
FF00FF
FF3300
FF3333
FF3366
FF3399
FF33CC
FF33FF
FF6600
FF6633
FF6666
FF6699
FF66CC
FF66FF
FF9900
FF9933
FF9966
FF9999
FF99CC
FF99FF
FFCC00
FFCC33
FFCC66
FFCC99
FFCCCC
FFCCFF
FFFF00
FFFF33
FFFF66
FFFF99
FFFFCC
HTML Forms
HTML Forms are required when you want to collect some data from the site visitor. For example
registration information: name, email address, credit card, etc.
A form will take input from the site visitor and then will post your back-end application such as
CGI, ASP Script or PHP script etc. Then your back-end application will do required processing on
that data in whatever way you like.
Form elements are like text fields, textarea fields, drop-down menus, radio buttons,
checkboxes, etc. which are used to take information from the user.
A simple syntax of using <form> is as follows:
<form action="back-end script" method="posting method"> form elements like input, textarea etc.
</form>
There are different types of form controls that you can use to collect data from a visitor to your
site.
Single-line text input controls: Used for items that require only one line of user
input, such as search boxes or names. They are created using the <input> element.
Password input controls: Single-line text input that mask the characters a user
enters.
Multi-line text input controls: Used when the user is required to give details that
may be longer than a single sentence. Multi-line input controls are created with the
<textarea> element.
submit
type: Indicates the type of input control you want to create. This element is also used
to create other form controls such as radio buttons and checkboxes.
name: Used to give the name part of the name/value pair that is sent to the server,
representing each form control and the value the user entered.
value: Provides an initial value for the text input control that the user will see when the
form loads.
size: Allows you to specify the width of the text-input control in terms of characters.
maxlength: Allows you to specify the maximum number of characters a user can enter
into the text box.
50 | P a
ge
50 | P a
ge