BASIC WEB DESIGN COURSE
BASIC WEB DESIGN COURSE
This is an introductory course of Web design that covers HTML and CSS designed to be taught in two
months.
HTML
Overview
Basic Tags
Elements
Attributes
Phrase Tags
Meta Tag
Comments
Images
Tables
Lists
Text Links
Image links
Email links
Frames
Iframes
Blocks
Background
Colors
Fonts
Forms
Embed Multimedia
Marquees
Header
Style
Layout
CSS
Introduction
Syntax
Inclusion
Measurement Units
Colors
Backgrounds
Fonts
Text
Images
Links
Tables
Borders
Margins
Lists
Padding
Cursors
Outlines
Dimensions
Scrollbars
Overview
HTML stands for Hyper Text Markup Language, which is the most widely used
language on Web to develop web pages. HTML was created by Berners-Lee in
late 1991 but "HTML 2.0" was the first standard HTML specification which was
published in 1995. HTML 4.01 was a major version of HTML and it was
published in late 1999. Though HTML 4.01 version is widely used but currently
we are having HTML-5 version which is an extension to HTML 4.01, and this
version was published in 2012.
<!DOCTYPE html>
<html>
<head>
<title>This is document title</title>
</head>
<body>
<h1>This is a heading</h1>
<p>Document content goes here.....</p>
</body>
</html>
Basic Tags
Heading Tags
Any document starts with a heading. You can use different sizes for your
headings. HTML also has six levels of headings, which use the
elements <h1>, <h2>, <h3>, <h4>, <h5>, and <h6>. While displaying
any heading, browser adds one line before and one line after that heading.
Example
<!DOCTYPE html>
<html>
<head>
<title>Heading Example</title>
</head>
<body>
<h1>This is heading 1</h1>
<h2>This is heading 2</h2>
<h3>This is heading 3</h3>
<h4>This is heading 4</h4>
<h5>This is heading 5</h5>
<h6>This is heading 6</h6>
</body>
</html>
Paragraph Tag
The <p> tag offers a way to structure your text into different paragraphs.
Each paragraph of text should go in between an opening <p> and a closing
</p> tag as shown below in the example −
Example
<!DOCTYPE html>
<html>
<head>
<title>Paragraph Example</title>
</head>
<body>
<p>Here is a first paragraph of text.</p>
<p>Here is a second paragraph of text.</p>
<p>Here is a third paragraph of text.</p>
</body>
</html>
The <br /> tag has a space between the characters br and the forward slash.
If you omit this space, older browsers will have trouble rendering the line
break, while if you miss the forward slash character and just use <br> it is
not valid in XHTML.
Example
<!DOCTYPE html>
<html>
<head>
<title>Line Break Example</title>
</head>
<body>
<p>Hello<br />
You delivered your assignment ontime.<br />
Thanks<br />
Mahnaz</p>
</body>
</html>
Centering Content
You can use <center> tag to put any content in the center of the page or
any table cell.
Example
<!DOCTYPE html>
<html>
<head>
<title>Centring Content Example</title>
</head>
<body>
<p>This text is not in the center.</p>
<center>
<p>This text is in the center.</p>
</center>
</body>
</html>
Horizontal Lines
Horizontal lines are used to visually break-up sections of a document.
The <hr> tag creates a line from the current position in the document to the
right margin and breaks the line accordingly.
For example, you may want to give a line between two paragraphs as in the
given example below −
Example
<!DOCTYPE html>
<html>
<head>
<title>Horizontal Line Example</title>
</head>
<body>
<p>This is paragraph one and should be on top</p>
<hr />
<p>This is paragraph two and should be at bottom</p>
</body>
</html>
Again <hr /> tag is an example of the empty element, where you do not
need opening and closing tags, as there is nothing to go in between them.
The <hr /> element has a space between the characters hr and the forward
slash. If you omit this space, older browsers will have trouble rendering the
horizontal line, while if you miss the forward slash character and just
use <hr> it is not valid in XHTML
Preserve Formatting
Sometimes, you want your text to follow the exact format of how it is written
in the HTML document. In these cases, you can use the preformatted
tag <pre>.
Any text between the opening <pre> tag and the closing </pre> tag will
preserve the formatting of the source document.
Example
<!DOCTYPE html>
<html>
<head>
<title>Preserve Formatting Example</title>
</head>
<body>
<pre>
function testFunction( strText ){
alert (strText)
}
</pre>
</body>
</html>
Try using the same code without keeping it inside <pre>...</pre> tags
Nonbreaking Spaces
Suppose you want to use the phrase "12 Angry Men." Here, you would not
want a browser to split the "12, Angry" and "Men" across two lines −
Example
<!DOCTYPE html>
<html>
<head>
<title>Nonbreaking Spaces Example</title>
</head>
<body>
<p>An example of this technique appears in the movie
"12 Angry Men."</p>
</body>
</html>
HTML Elements
HTML documents consists of a tree of these elements and they specify how
HTML documents should be built, and what kind of content should be placed
in what part of an HTML document.
For example, <p> is starting tag of a paragraph and </p> is closing tag of
the same paragraph but <p>This is paragraph</p> is a paragraph
element.
Example
<!DOCTYPE html>
<html>
<head>
<title>Nested Elements Example</title>
</head>
<body>
<h1>This is <i>italic</i> heading</h1>
<p>This is <u>underlined</u> paragraph</p>
</body>
</html>
HTML Attributes
We have seen few HTML tags and their usage like heading tags <h1>,
<h2>, paragraph tag <p> and other tags. We used them so far in their
simplest form, but most of the HTML tags can also have attributes, which are
extra bits of information.
The name is the property you want to set. For example, the
paragraph <p> element in the example carries an attribute whose name
is align, which you can use to indicate the alignment of paragraph on the page.
The value is what you want the value of the property to be set and always put
within quotations. The below example shows three possible values of align
attribute: left, center and right.
Example
<!DOCTYPE html>
<html>
<head>
<title>Align Attribute Example</title>
</head>
<body>
<p align = "left">This is left aligned</p>
<p align = "center">This is center aligned</p>
<p align = "right">This is right aligned</p>
</body>
</html>
Core Attributes
The four core attributes that can be used on the majority of HTML elements
(although not all) are −
Id
Title
Class
Style
The Id Attribute
The id attribute of an HTML tag can be used to uniquely identify any element
within an HTML page. There are two primary reasons that you might want to
use an id attribute on an element −
If you have two elements of the same name within a Web page (or style sheet),
you can use the id attribute to distinguish between elements that have the same
name.
We will discuss style sheet in separate tutorial. For now, let's use the id
attribute to distinguish between two paragraph elements as shown below.
Example
<p id = "html">This para explains what is HTML</p>
<p id = "css">This para explains what is Cascading Style Sheet</p>
The behavior of this attribute will depend upon the element that carries it,
although it is often displayed as a tooltip when cursor comes over the element
or while the element is loading.
Example
<!DOCTYPE html>
<html>
<head>
<title>The title Attribute Example</title>
</head>
<body>
<h3 title = "Hello HTML!">Titled Heading Tag Example</h3>
</body>
</html>
Now try to bring your cursor over "Titled Heading Tag Example" and you will
see that whatever title you used in your code is coming out as a tooltip of the
cursor.
<!DOCTYPE html>
<html>
<head>
<title>The style Attribute</title>
</head>
<body>
<p style = "font-family:arial; color:#FF0000;">Some text...</p>
</body>
</html>
At this point of time, we are not learning CSS, so just let's proceed without
bothering much about CSS. Here, you need to understand what are HTML
attributes and how they can be used while formatting content.
Internationalization Attributes
There are three internationalization attributes, which are available for most
(although not all) XHTML elements.
dir
lang
xml:lang
The dir Attribute
The dir attribute allows you to indicate to the browser about the direction in
which the text should flow. The dir attribute can take one of two values, as
you can see in the table that follows −
Value Meaning
Rtl Right to left (for languages such as Hebrew or Arabic that are read right
to left)
Example
<!DOCTYPE html>
<html dir = "rtl">
<head>
<title>Display Directions</title>
</head>
<body>
This is how IE 5 renders right-to-left directed text.
</body>
</html>
When dir attribute is used within the <html> tag, it determines how text will
be presented within the entire document. When used within another tag, it
controls the text's direction for just the content of that tag.
The lang Attribute
The lang attribute allows you to indicate the main language used in a
document, but this attribute was kept in HTML only for backwards
compatibility with earlier versions of HTML. This attribute has been replaced
by the xml:lang attribute in new XHTML documents.
Example
<!DOCTYPE html>
<html lang = "en">
<head>
<title>English Language Page</title>
</head>
<body>
This page is using English Language
</body>
</html>
Generic Attributes
Here's a table of some other attributes that are readily usable with many of
the HTML tags.
Attribute Options Function
We will see related examples as we will proceed to study other HTML tags.
For a complete list of HTML Tags and related attributes please check reference
to HTML Tags List.
HTML Formatting
If you use a word processor, you must be familiar with the ability to make
text bold, italicized, or underlined; these are just three of the ten options
available to indicate how text can appear in HTML and XHTML.
Bold Text
Anything that appears within <b>...</b> element, is displayed in bold as
shown below −
Example
<!DOCTYPE html>
<html>
<head>
<title>Bold Text Example</title>
</head>
<body>
<p>The following word uses a <b>bold</b> typeface.</p>
</body>
</html>
Italic Text
Anything that appears within <i>...</i> element is displayed in italicized as
shown below −
Example
<!DOCTYPE html>
<html>
<head>
<title>Italic Text Example</title>
</head>
<body>
<p>The following word uses an <i>italicized</i> typeface.</p>
</body>
</html>
Underlined Text
Anything that appears within <u>...</u> element, is displayed with
underline as shown below −
Example
<!DOCTYPE html>
<html>
<head>
<title>Underlined Text Example</title>
</head>
<body>
<p>The following word uses an <u>underlined</u> typeface.</p>
</body>
</html>
Strike Text
Anything that appears within <strike>...</strike> element is displayed
with strikethrough, which is a thin line through the text as shown below −
Example
<!DOCTYPE html>
<html>
<head>
<title>Strike Text Example</title>
</head>
<body>
<p>The following word uses a <strike>strikethrough</strike> typeface.</p>
</body>
</html>
Monospaced Font
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>
<title>Monospaced Font Example</title>
</head>
<body>
<p>The following word uses a <tt>monospaced</tt> typeface.</p>
</body>
</html>
This will produce the following result −
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>
<title>Superscript Text Example</title>
</head>
<body>
<p>The following word uses a <sup>superscript</sup> typeface.</p>
</body>
</html>
Subscript Text
The content of a <sub>...</sub> element is written in subscript; the font
size used is the same as the characters surrounding it, but is displayed half
a character's height beneath the other characters.
Example
<!DOCTYPE html>
<html>
<head>
<title>Subscript Text Example</title>
</head>
<body>
<p>The following word uses a <sub>subscript</sub> typeface.</p>
</body>
</html>
Inserted Text
Anything that appears within <ins>...</ins> element is displayed as
inserted text.
Example
<!DOCTYPE html>
<html>
<head>
<title>Inserted Text Example</title>
</head>
<body>
<p>I want to drink <del>cola</del> <ins>wine</ins></p>
</body>
</html>
Deleted Text
Anything that appears within <del>...</del> element, is displayed as
deleted text.
Example
<!DOCTYPE html>
<html>
<head>
<title>Deleted Text Example</title>
</head>
<body>
<p>I want to drink <del>cola</del> <ins>wine</ins></p>
</body>
</html>
Larger Text
The content of the <big>...</big> element is displayed one font size larger
than the rest of the text surrounding it as shown below −
Example
<!DOCTYPE html>
<html>
<head>
<title>Larger Text Example</title>
</head>
<body>
<p>The following word uses a <big>big</big> typeface.</p>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>Smaller Text Example</title>
</head>
<body>
<p>The following word uses a <small>small</small> typeface.</p>
</body>
</html>
Grouping Content
The <div> and <span> elements allow you to group together several
elements to create sections or subsections of a page.
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>
<title>Div Tag Example</title>
</head>
<body>
<div id = "menu" align = "middle" >
<a href = "/index.htm">HOME</a> |
<a href = "/about/contact_us.htm">CONTACT</a> |
<a href = "/about/index.htm">ABOUT</a>
</div>
</html>
The <span> element, on the other hand, can be used to group inline
elements only. So, if you have a part of a sentence or paragraph which you
want to group together, you could use the <span> element as follows.
Example
<!DOCTYPE html>
<html>
<head>
<title>Span Tag Example</title>
</head>
<body>
<p>This is the example of <span style = "color:green">span tag</span>
and the <span style = "color:red">div tag</span> alongwith CSS</p>
</body>
</html>
These tags are commonly used with CSS to allow you to attach a style to a
section of a page.
The phrase tags have been desicolgned 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>
<title>Emphasized Text Example</title>
</head>
<body>
<p>The following word uses an <em>emphasized</em> typeface.</p>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>Marked Text Example</title>
</head>
<body>
<p>The following word has been <mark>marked</mark> with yellow</p>
</body>
</html>
Strong Text
Anything that appears within <strong>...</strong> element is displayed
as important text.
Example
<!DOCTYPE html>
<html>
<head>
<title>Strong Text Example</title>
</head>
<body>
<p>The following word uses a <strong>strong</strong> typeface.</p>
</body>
</html>
Text Abbreviation
You can abbreviate a text by putting it inside opening <abbr> and closing
</abbr> tags. If present, the title attribute must contain this full description
and nothing else.
Example
<!DOCTYPE html>
<html>
<head>
<title>Text Abbreviation</title>
</head>
<body>
<p>My best friend's name is <abbr title = "Abhishek">Abhy</abbr>.</p>
</body>
</html>
Acronym Element
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>
<p>This chapter covers marking up text in <acronym>XHTML</acronym>.</p>
</body>
</html>
Text Direction
The <bdo>...</bdo> element stands for Bi-Directional Override and it is
used to override the current text direction.
Example
<!DOCTYPE html>
<html>
<head>
<title>Text Direction Example</title>
</head>
<body>
<p>This text will go left to right.</p>
<p><bdo dir = "rtl">This text will go right to left.</bdo></p>
</body>
</html>
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>
<title>Special Terms Example</title>
</head>
<body>
<p>The following word is a <dfn>special</dfn> term.</p>
</body>
</html>
Quoting Text
When you want to quote a passage from another source, you should put it in
between <blockquote>...</blockquote> tags.
Text inside a <blockquote> element is usually indented from the left and
right edges of the surrounding text, and sometimes uses an italicized font.
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>
</html>
Short Quotations
The <q>...</q> element is used when you want to add a double quote
within a sentence.
Example
<!DOCTYPE html>
<html>
<head>
<title>Double Quote Example</title>
</head>
<body>
<p>Amit is in Spain, <q>I think I am wrong</q>.</p>
</body>
</html>
This will produce the following result −
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>
<p>This HTML tutorial is derived from <cite>W3 Standard for HTML</cite>.</p>
</body>
</html>
Computer Code
Any programming code to appear on a Web page should be placed
inside <code>...</code> tags. Usually the content of the <code> element
is presented in a monospaced font, just like the code in most programming
books.
Example
<!DOCTYPE html>
<html>
<head>
<title>Computer Code Example</title>
</head>
<body>
<p>Regular text. <code>This is code.</code> Regular text.</p>
</body>
</html>
Keyboard Text
When you are talking about computers, if you want to tell a reader to enter
some text, you can use the <kbd>...</kbd> element to indicate what
should be typed in, as in this example.
Example
<!DOCTYPE html>
<html>
<head>
<title>Keyboard Text Example</title>
</head>
<body>
<p>Regular text. <kbd>This is inside kbd element</kbd> Regular text.</p>
</body>
</html>
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>
<title>Variable Text Example</title>
</head>
<body>
<p><code>document.write("<var>user-name</var>")</code></p>
</body>
</html>
Program Output
The <samp>...</samp> element indicates sample output from a program,
and script etc. Again, it is mainly used when documenting programming or
coding concepts.
Example
<!DOCTYPE html>
<html>
<head>
<title>Program Output Example</title>
</head>
<body>
<p>Result produced by the program is <samp>Hello World!</samp></p>
</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>
<address>388A, Road No 22, Jubilee Hills - Hyderabad</address>
</body>
</html>
Meta Tags
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.
1 Name
2
content
3
scheme
4
http-equiv
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.
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>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Document Description
You can use <meta> tag to give a short description about the document. This
again can be used by various search engines while indexing your webpage
for searching purpose.
Example
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags." />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags." />
<meta name = "revised" content = "Tutorialspoint, 3/7/2014" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Document Refreshing
A <meta> tag can be used to specify a duration after which your web page
will keep refreshing automatically.
Example
If you want your page keep refreshing after every 5 seconds then use the
following syntax.
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags." />
<meta name = "revised" content = "Tutorialspoint, 3/7/2014" />
<meta http-equiv = "refresh" content = "5" />
</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
specify content attribute.
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags." />
<meta name = "revised" content = "Tutorialspoint, 3/7/2014" />
<meta http-equiv = "refresh" content = "5; url = http://www.tutorialspoint.com"
/>
</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
information based on your web application need.
You can use <meta> tag to store cookies on client side and later this
information can be used by the Web Server to track a site visitor.
Example
Following is an example of redirecting current page to another page after 5
seconds. If you want to redirect page immediately then do not
specify content attribute.
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags." />
<meta name = "revised" content = "Tutorialspoint, 3/7/2014" />
<meta http-equiv = "cookie" content = "userid = xyz;
expires = Wednesday, 08-Aug-15 23:59:59 GMT;" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
If you do not include the expiration date and time, the cookie is considered a
session cookie and will be deleted when the user exits the browser.
Note − You can check PHP and Cookies tutorial for a complete detail on
Cookies.
Example
<!DOCTYPE html>
<html>
<head>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags." />
<meta name = "author" content = "Mahnaz Mohtashim" />
</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>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags." />
<meta name = "author" content = "Mahnaz Mohtashim" />
<meta http-equiv = "Content-Type" content = "text/html; charset = UTF-8" />
</head>
<body>
<p>Hello HTML5!</p>
</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>
<title>Meta Tags Example</title>
<meta name = "keywords" content = "HTML, Meta Tags, Metadata" />
<meta name = "description" content = "Learning about Meta Tags." />
<meta name = "author" content = "Mahnaz Mohtashim" />
<meta http-equiv = "Content-Type" content = "text/html; charset = Big5" />
</head>
<body>
<p>Hello HTML5!</p>
</body>
</html>
Comments
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>
<head> <!-- Document Header Starts -->
<title>This is document title</title>
</head> <!-- Document Header Ends -->
<body>
<p>Document content goes here.....</p>
</body>
</html>
This will produce the following result without displaying the content given as
a part of comments −
Example
Here, the given comment is a valid comment and will be wiped off by the
browser.
<!DOCTYPE html>
<html>
<head>
<title>Valid Comment Example</title>
</head>
<body>
<!-- This is valid comment -->
<p>Document content goes here.....</p>
</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>
<title>Invalid Comment Example</title>
</head>
<body>
< !-- This is not a valid comment -->
<p>Document content goes here.....</p>
</body>
</html>
Multiline Comments
So far we have seen single line comments, but HTML supports multi-line
comments as well.
You can comment multiple lines by the special beginning tag <!-- and ending
tag --> placed before the first line and end of the last line as shown in the
given example below.
Example
<!DOCTYPE html>
<html>
<head>
<title>Multiline Comments</title>
</head>
<body>
<!--
This is a multiline comment and it can
span through as many as lines you like.
-->
</html>
Conditional Comments
Conditional comments only work in Internet Explorer (IE) on Windows but
they are ignored by other browsers. They are supported from Explorer 5
onwards, and you can use them to give conditional instructions to different
versions of IE.
Example
<!DOCTYPE html>
<html>
<head>
<title>Conditional Comments</title>
<!--[if IE 6]>
Special instructions for IE 6 here
<![endif]-->
</head>
<body>
<p>Document content goes here.....</p>
</body>
</html>
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.
HTML-Images
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>
<title>Using Image in Webpage</title>
</head>
<body>
<p>Simple Image Insert</p>
<img src = "/html/images/test.png" alt = "Test Image" />
</body>
</html>
You can use PNG, JPEG or GIF image file based on your comfort but make
sure you specify correct image file name in src attribute. Image name is
always case sensitive.
Example
Assuming our image location is "image/test.png", try the following example
−
<!DOCTYPE html>
<html>
<head>
<title>Using Image in Webpage</title>
</head>
<body>
<p>Simple Image Insert</p>
<img src = "/html/images/test.png" alt = "Test Image" />
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>Set Image Width and Height</title>
</head>
<body>
<p>Setting image width and height</p>
<img src = "/html/images/test.png" alt = "Test Image" width = "150" height =
"100"/>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>Set Image Border</title>
</head>
<body>
<p>Setting image Border</p>
<img src = "/html/images/test.png" alt = "Test Image" border = "3"/>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>Set Image Alignment</title>
</head>
<body>
<p>Setting image Alignment</p>
<img src = "/html/images/test.png" alt = "Test Image" border = "3" align =
"right"/>
</body>
</html>
Html-tables
The HTML tables allow web authors to arrange data like text, images, links,
other tables, etc. into rows and columns of cells.
The HTML tables are created using the <table> tag in which the <tr> tag is
used to create table rows and <td> tag is used to create data cells. The
elements under <td> are regular and left aligned by default
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Tables</title>
</head>
<body>
<table border = "1">
<tr>
<td>Row 1, Column 1</td>
<td>Row 1, Column 2</td>
</tr>
<tr>
<td>Row 2, Column 1</td>
<td>Row 2, Column 2</td>
</tr>
</table>
</body>
</html>
Table Heading
Table heading can be defined using <th> tag. This tag will be put to replace
<td> tag, which is used to represent actual data cell. Normally you will put
your top row as table heading as shown below, otherwise you can use <th>
element in any row. Headings, which are defined in <th> tag are centered
and bold by default.
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Header</title>
</head>
<body>
<table border = "1">
<tr>
<th>Name</th>
<th>Salary</th>
</tr>
<tr>
<td>Ramesh Raman</td>
<td>5000</td>
</tr>
<tr>
<td>Shabbir Hussein</td>
<td>7000</td>
</tr>
</table>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Cellpadding</title>
</head>
<body>
<table border = "1" cellpadding = "5" cellspacing = "5">
<tr>
<th>Name</th>
<th>Salary</th>
</tr>
<tr>
<td>Ramesh Raman</td>
<td>5000</td>
</tr>
<tr>
<td>Shabbir Hussein</td>
<td>7000</td>
</tr>
</table>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Colspan/Rowspan</title>
</head>
<body>
<table border = "1">
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
<tr>
<td rowspan = "2">Row 1 Cell 1</td>
<td>Row 1 Cell 2</td>
<td>Row 1 Cell 3</td>
</tr>
<tr>
<td>Row 2 Cell 2</td>
<td>Row 2 Cell 3</td>
</tr>
<tr>
<td colspan = "3">Row 3 Cell 1</td>
</tr>
</table>
</body>
</html>
Tables Backgrounds
You can set table background using one of the following two ways −
bgcolor attribute − You can set background color for whole table or just for one
cell.
background attribute − You can set background image for whole table or just
for one cell.
You can also set border color also using bordercolor attribute.
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Background</title>
</head>
<body>
<table border = "1" bordercolor = "green" bgcolor = "yellow">
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
<tr>
<td rowspan = "2">Row 1 Cell 1</td>
<td>Row 1 Cell 2</td>
<td>Row 1 Cell 3</td>
</tr>
<tr>
<td>Row 2 Cell 2</td>
<td>Row 2 Cell 3</td>
</tr>
<tr>
<td colspan = "3">Row 3 Cell 1</td>
</tr>
</table>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Background</title>
</head>
<body>
<table border = "1" bordercolor = "green" background = "/images/test.png">
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
<tr>
<td rowspan = "2">Row 1 Cell 1</td>
<td>Row 1 Cell 2</td><td>Row 1 Cell 3</td>
</tr>
<tr>
<td>Row 2 Cell 2</td>
<td>Row 2 Cell 3</td>
</tr>
<tr>
<td colspan = "3">Row 3 Cell 1</td>
</tr>
</table>
</body>
</html>
This will produce the following result. Here background image did not apply
to table's header.
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Width/Height</title>
</head>
<body>
<table border = "1" width = "400" height = "150">
<tr>
<td>Row 1, Column 1</td>
<td>Row 1, Column 2</td>
</tr>
<tr>
<td>Row 2, Column 1</td>
<td>Row 2, Column 2</td>
</tr>
</table>
</body>
</html>
Table Caption
The caption tag will serve as a title or explanation for the table and it shows
up at the top of the table. This tag is deprecated in newer version of
HTML/XHTML.
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Table Caption</title>
</head>
<body>
<table border = "1" width = "100%">
<caption>This is the caption</caption>
<tr>
<td>row 1, column 1</td><td>row 1, columnn 2</td>
</tr>
<tr>
<td>row 2, column 1</td><td>row 2, columnn 2</td>
</tr>
</table>
</body>
</html>
The three elements for separating the head, body, and foot of a table are −
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Table</title>
</head>
<body>
<table border = "1" width = "100%">
<thead>
<tr>
<td colspan = "4">This is the head of the table</td>
</tr>
</thead>
<tfoot>
<tr>
<td colspan = "4">This is the foot of the table</td>
</tr>
</tfoot>
<tbody>
<tr>
<td>Cell 1</td>
<td>Cell 2</td>
<td>Cell 3</td>
<td>Cell 4</td>
</tr>
</tbody>
</table>
</body>
</html>
Nested Tables
You can use one table inside another table. Not only tables you can use
almost all the tags inside table data tag <td>.
Example
Following is the example of using another table and other tags inside a table
cell.
<!DOCTYPE html>
<html>
<head>
<title>HTML Table</title>
</head>
<body>
<table border = "1" width = "100%">
<tr>
<td>
<table border = "1" width = "100%">
<tr>
<th>Name</th>
<th>Salary</th>
</tr>
<tr>
<td>Ramesh Raman</td>
<td>5000</td>
</tr>
<tr>
<td>Shabbir Hussein</td>
<td>7000</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
Name Salary
Ramesh Raman 5000
Shabbir Hussein 7000
HTML List
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.
HTML Unordered Lists
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>
<title>HTML Unordered List</title>
</head>
<body>
<ul>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Example
Following is an example where we used <ul type = "square">
<!DOCTYPE html>
<html>
<head>
<title>HTML Unordered List</title>
</head>
<body>
<ul type = "square">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Example
Following is an example where we used <ul type = "disc"> −
<!DOCTYPE html>
<html>
<head>
<title>HTML Unordered List</title>
</head>
<body>
<ul type = "disc">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Example
Following is an example where we used <ul type = "circle"> −
<!DOCTYPE html>
<html>
<head>
<title>HTML Unordered List</title>
</head>
<body>
<ul type = "circle">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "1">
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "1">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "I">
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "I">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "i">
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "i">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "A" >
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "A">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "a">
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "a">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
Example
Following is an example where we used <ol type = "i" start = "4" >
<!DOCTYPE html>
<html>
<head>
<title>HTML Ordered List</title>
</head>
<body>
<ol type = "i" start = "4">
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ol>
</body>
</html>
<dt> − A term
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML Definition List</title>
</head>
<body>
<dl>
<dt><b>HTML</b></dt>
<dd>This stands for Hyper Text Markup Language</dd>
<dt><b>HTTP</b></dt>
<dd>This stands for Hyper Text Transfer Protocol</dd>
</dl>
</body>
</html>
This will produce the following result −
HTML
This stands for Hyper Text Markup Language
HTTP
This stands for Hyper Text Transfer Protocol
HTML-Links
A webpage can contain various links that take you directly to other pages and
even specific parts of a given page. These links are known as hyperlinks.
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
Let's try following example which links http://www.tutorialspoint.com at your
page −
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
</head>
<body>
<p>Click following link</p>
<a href = "http://www.tutorialspoint.com" target = "_self">Tutorials Point</a>
</body>
</html>
This will produce the following result, where you can click on the link
generated to reach to the home page of Tutorials Point (in this example).
1 _blank
2
_self
3
_parent
4
_top
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>
<p>Click any of the following links</p>
<a href = "/html/index.htm" target = "_blank">Opens in New</a> |
<a href = "/html/index.htm" target = "_self">Opens in Self</a> |
<a href = "/html/index.htm" target = "_parent">Opens in Parent</a> |
<a href = "/html/index.htm" target = "_top">Opens in Body</a>
</body>
</html>
This will produce the 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>
<p>Click following link</p>
<a href = "/html/index.htm" target = "_blank">HTML Tutorial</a>
</body>
</html>
This will produce the following result, where you can click on the link
generated HTML Tutorial to reach to the HTML tutorial.
Note − The name attribute deprecated in HTML5. Do not use this attribute.
Use id and title attribute instead.
First create a link to the place where you want to reach with-in a webpage
and name it using <a...> tag as follows −
Second step is to create a hyperlink to link the document and place where
you want to reach −
This will produce following link, where you can click on the link generated Go
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
how link, alink and vlink attributes work.
<!DOCTYPE html>
<html>
<head>
<title>Hyperlink Example</title>
<base href = "http://www.tutorialspoint.com/">
</head>
</html>
This will produce the 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.
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>
<a href = "http://www.tutorialspoint.com/page.pdf">Download PDF File</a>
</body>
</html>
This will produce following link and will be used to download a file.
Image Links
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>
<title>Image Hyperlink Example</title>
</head>
<body>
<p>Click following link</p>
<a href = "http://www.tutorialspoint.com" target = "_self">
<img src = "/images/logo.png" alt = "Tutorials Point" border = "0"/>
</a>
</body>
</html>
This code will generate the following link which you can use to send email.
Send Email
Now, if a user clicks this link, it launches one Email Client (like Lotus Notes,
Outlook Express etc. ) installed on your user's computer. There is another
risk to use this option to send email because if user do not have email client
installed on their computer then it would not be possible to send email.
Default Settings
You can specify a default email subject and email body along with your email
address. Following is the example to use default subject and body.
This code will generate the following link which you can use to send email.
Send Feedback
Another option to facilitate people to send you emails. One option could be to use
HTML forms to collect user data and then use PHP or CGI script to send an email.
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.
The browser's back button might not work as the user hopes.
There are still few browsers that do not support frame technology.
Creating Frames
To use frames on a page we use <frameset> tag instead of <body> tag. The
<frameset> tag defines, how to divide the window into frames.
The rows attribute of <frameset> tag defines horizontal frames
and cols attribute defines vertical frames. Each frame is indicated by
<frame> tag and it defines which HTML document shall open into the frame.
Note − The <frame> tag deprecated in HTML5. Do not use this element.
Example
Following is the example to create three horizontal frames −
<!DOCTYPE html>
<html>
<head>
<title>HTML Frames</title>
</head>
<noframes>
<body>Your browser does not support frames.</body>
</noframes>
</frameset>
</html>
Example
Let's put the above example as follows, here we replaced rows attribute by
cols and changed their width. This will create all the three frames vertically
−
<!DOCTYPE html>
<html>
<head>
<title>HTML Frames</title>
</head>
<noframes>
<body>Your browser does not support frames.</body>
</noframes>
</frameset>
</html>
1 cols
Specifies how many columns are contained in the frameset and the size of
each column. You can specify the width of each column in one of the four
ways −
2
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.
3
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.
4
frameborder
5
framespacing
1 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.
2
name
3
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).
4
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".
5
marginheight
This attribute allows you to specify the height of the space between the
top and bottom of the frame's borders and its contents. The value is given
in pixels. For example marginheight = "10".
6
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".
7
scrolling
This attribute controls the appearance of the scrollbars that appear on the
frame. This takes values either "yes", "no" or "auto". For example scrolling
= "no" means it should not have scroll bars.
8
longdesc
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.
Frame's name and target attributes
One of the most popular uses of frames is to place navigation bars in one
frame and then load main pages into a separate frame.
Let's see following example where a test.htm file has following code −
<!DOCTYPE html>
<html>
<head>
<title>HTML Target Frames</title>
</head>
<noframes>
<body>Your browser does not support frames.</body>
</noframes>
</frameset>
</html>
Here, we have created two columns to fill with two frames. The first frame is
200 pixels wide and will contain the navigation menu bar implemented
by menu.htm file. The second column fills in remaining space and will
contain the main part of the page and it is implemented by main.htm file.
For all the three links available in menu bar, we have mentioned target frame
as main_page, so whenever you click any of the links in menu bar, available
link will open in main page.
<!DOCTYPE html>
<html>
</html>
<!DOCTYPE html>
<html>
</html>
Now you can try to click links available in the left panel and see the result.
The targetattribute can also take one of the following values −
2
_blank
3
_parent
Loads the page into the parent window, which in the case of a single
frameset is the main browser window.
4
_top
Loads the page into the browser window, replacing any current frames.
5
targetframe
HTML-Iframe
You can define an inline frame with HTML tag <iframe>. The <iframe> tag
is not somehow related to <frameset> tag, instead, it can appear anywhere
in your document. The <iframe> tag defines a rectangular region within the
document in which the browser can display a separate document, including
scrollbars and borders.
The src attribute is used to specify the URL of the document that occupies
the inline frame.
Example
Following is the example to show how to use the <iframe> −
<!DOCTYPE html>
<html>
<head>
<title>HTML Iframes</title>
</head>
<body>
<p>Document content goes here...</p>
</html>
1 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.
2
name
3
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).
4
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".
5
marginheight
This attribute allows you to specify the height of the space between the
top and bottom of the frame's borders and its contents. The value is given
in pixels. For example marginheight = "10".
6
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".
7
scrolling
This attribute controls the appearance of the scrollbars that appear on the
frame. This takes values either "yes", "no" or "auto". For example scrolling
= "no" means it should not have scroll bars.
8
longdesc
Html –Block
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.
Grouping HTML Elements
There are two important tags which we use very frequently to group various
other HTML tags (i) <div> tag and (ii) <span> tag
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>
<title>HTML div Tag</title>
</head>
<body>
<!-- First group of tags -->
<div style = "color:red">
<h4>This is first group</h4>
<p>Following is a list of vegetables</p>
<ul>
<li>Beetroot</li>
<li>Ginger</li>
<li>Potato</li>
<li>Radish</li>
</ul>
</div>
<ul>
<li>Apple</li>
<li>Banana</li>
<li>Mango</li>
<li>Strawberry</li>
</ul>
</div>
</body>
</html>
The difference between the <span> tag and the <div> tag is that the <span>
tag is used with inline elements whereas the <div> tag is used with block-
level elements.
Example
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>
<title>HTML span Tag</title>
</head>
<body>
<p>This is <span style = "color:red">red</span> and this is
<span style = "color:green">green</span></p>
</body>
</html>
HTML-Background
By default, your webpage background is white in color. You may not like it,
but no worries. HTML provides you following two good ways to decorate your
webpage background.
Now let's see both the approaches one by one using appropriate examples.
Note − The bgcolor attribute deprecated in HTML5. Do not use this attribute.
Following is the syntax to use bgcolor attribute with any HTML tag.
<tagname bgcolor = "color_value"...>
Example
Here are the examples to set background of an HTML tag −
<!DOCTYPE html>
<html>
<head>
<title>HTML Background Colors</title>
</head>
<body>
<!-- Format 1 - Use color name -->
<table bgcolor = "yellow" width = "100%">
<tr>
<td>
This background is yellow
</td>
</tr>
</table>
</html>
Note − The background attribute deprecated in HTML5. Do not use this attribute.
Following is the syntax to use background attribute with any HTML tag.
The most frequently used image formats are JPEG, GIF and PNG images.
Example
Here are the examples to set background images of a table.
<!DOCTYPE html>
<html>
<head>
<title>HTML Background Images</title>
</head>
<body>
<!-- Set table background -->
<table background = "/images/html.gif" width = "100%" height = "100">
<tr><td>
This background is filled up with HTML image.
</td></tr>
</table>
</body>
</html>
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.
HTML Color Coding Methods
There are following three different methods to set colors in your web page −
Color names − You can specify color names directly like green, blue or red.
Hex codes − A six-digit code representing the amount of red, green, and blue
that makes up the color.
Color decimal or percentage values − This value is specified using the rgb( )
property.
Example
Here are the examples to set background of an HTML tag by color name −
<!DOCTYPE html>
<html>
<head>
<title>HTML Colors by Name</title>
</head>
</html>
A hexadecimal value can be taken from any graphics software like Adobe
Photoshop, Paintshop Pro or MS Paint.
#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>
<title>HTML Colors by Hex</title>
</head>
</html>
Note − All the browsers does not support rgb() property of color so it is recommended
not to use it.
rgb(0,0,0)
rgb(255,0,0)
rgb(0,255,0)
rgb(0,0,255)
rgb(255,255,0)
rgb(0,255,255)
rgb(255,0,255)
rgb(192,192,192)
rgb(255,255,255)
Example
Here are the examples to set background of an HTML tag by color code using
rgb() values −
<!DOCTYPE html>
<html>
<head>
<title>HTML Colors by RGB code</title>
</head>
</html>
Browser Safe Colors
Here is the list of 216 colors which are supposed to be safest and computer
independent colors. These colors very from hexa code 000000 to FFFFFF and
they will be supported by all the computers having 256 color palette
HTML-Fonts
Fonts play a very important role in making a website more user friendly and
increasing content readability. Font face and color depends entirely on the
computer and browser that is being used to view your page but you can use
HTML <font> tag to add style, size, and color to the text on your website.
You can use a <basefont> tag to set all of your text to the same size, face,
and color.
The font tag is having three attributes called size, color, and face to
customize your fonts. To change any of the font attributes at any time within
your webpage, simply use the <font> tag. The text that follows will remain
changed until you close with the </font> tag. You can change one or all of
the font attributes within one <font> tag.
Note −The font and basefont tags are deprecated and it is supposed to be removed in
a future version of HTML. So they should not be used rather, it's suggested to use CSS
styles to manipulate your fonts. But still for learning purpose, this chapter will explain
font and basefont tags in detail.
Example
<!DOCTYPE html>
<html>
<head>
<title>Setting Font Size</title>
</head>
<body>
<font size = "1">Font size = "1"</font><br />
<font size = "2">Font size = "2"</font><br />
<font size = "3">Font size = "3"</font><br />
<font size = "4">Font size = "4"</font><br />
<font size = "5">Font size = "5"</font><br />
<font size = "6">Font size = "6"</font><br />
<font size = "7">Font size = "7"</font>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>Relative Font Size</title>
</head>
<body>
<font size = "-1">Font size = "-1"</font><br />
<font size = "+1">Font size = "+1"</font><br />
<font size = "+2">Font size = "+2"</font><br />
<font size = "+3">Font size = "+3"</font><br />
<font size = "+4">Font size = "+4"</font>
</body>
</html>
Example
<!DOCTYPE html>
<html>
<head>
<title>Font Face</title>
</head>
<body>
<font face = "Times New Roman" size = "5">Times New Roman</font><br />
<font face = "Verdana" size = "5">Verdana</font><br />
<font face = "Comic sans MS" size =" 5">Comic Sans MS</font><br />
<font face = "WildWest" size = "5">WildWest</font><br />
<font face = "Bedrock" size = "5">Bedrock</font><br />
</body>
</html>
When your page is loaded, their browser will display the first font face
available. If none of the given fonts are installed, then it will display the
default font face Times New Roman.
Note − You can check a complete list of HTML Color Name with Codes.
Example
<!DOCTYPE html>
<html>
<head>
<title>Setting Font Color</title>
</head>
<body>
<font color = "#FF00FF">This text is in pink</font><br />
<font color = "red">This text is red</font>
</body>
</html>
The <basefont> tag also takes color, size and face attributes and it will
support relative font setting by giving size a value of +1 for a size larger or
−2 for two sizes smaller.
Example
<!DOCTYPE html>
<html>
<head>
<title>Setting Basefont Color</title>
</head>
<body>
<basefont face = "arial, verdana, sans-serif" size = "2" color = "#ff0000">
<p>This is the page's default font.</p>
<h2>Example of the <basefont> Element</h2>
</html>
HTML Forms are required, when you want to collect some data from the site
visitor. For example, during user registration you would like to collect
information such as name, email address, credit card, etc.
A form will take input from the site visitor and then will post it to a back-end
application such as CGI, ASP Script or PHP script etc. The back-end
application will perform required processing on the passed data based on
defined business logic inside the application.
There are various form elements available like text fields, textarea fields,
drop-down menus, radio buttons, checkboxes, etc.
The HTML <form> tag is used to create an HTML form and it has following
syntax −
Form Attributes
Apart from common attributes, following is a list of the most frequently used
form attributes −
1 action
2
method
Method to be used to upload data. The most frequently used are GET and
POST methods.
3
target
Specify the target window or frame where the result of the script will be
displayed. It takes values like _blank, _self, _parent etc.
4
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>
<title>Text Input Control</title>
</head>
<body>
<form >
First name: <input type = "text" name = "first_name" />
<br>
Last name: <input type = "text" name = "last_name" />
</form>
</body>
</html>
Attributes
Following is the list of attributes for <input> tag for creating text field.
1 type
Indicates the type of input control and for text input control it will be set
to text.
2
name
3
value
4
size
5
maxlength
Allows to specify the maximum number of characters a user can enter into
the text box.
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 but type
attribute is set to password.
Example
Here is a basic example of a single-line password input used to take user
password −
<!DOCTYPE html>
<html>
<head>
<title>Password Input Control</title>
</head>
<body>
<form >
User ID : <input type = "text" name = "user_id" />
<br>
Password: <input type = "password" name = "password" />
</form>
</body>
</html>
Attributes
Following is the list of attributes for <input> tag for creating password field.
Indicates the type of input control and for password input control it will be
set to password.
2
name
3
value
4
size
5
maxlength
Allows to specify the maximum number of characters a user can enter into
the text box.
Example
Here is a basic example of a multi-line text input used to take item description
−
<!DOCTYPE html>
<html>
<head>
<title>Multiple-Line Input Control</title>
</head>
<body>
<form>
Description : <br />
<textarea rows = "5" cols = "50" name = "description">
Enter description here...
</textarea>
</form>
</body>
</html>
Attributes
Following is the list of attributes for <textarea> tag.
1 name
2
rows
3
cols
Indicates the number of columns of text area box
Checkbox Control
Checkboxes are used when more than one option is required to be selected.
They are also created using HTML <input> tag but type attribute is set
to checkbox..
Example
Here is an example HTML code for a form with two checkboxes −
<!DOCTYPE html>
<html>
<head>
<title>Checkbox Control</title>
</head>
<body>
<form>
<input type = "checkbox" name = "maths" value = "on"> Maths
<input type = "checkbox" name = "physics" value = "on"> Physics
</form>
</body>
</html>
Attributes
Following is the list of attributes for <checkbox> tag.
Indicates the type of input control and for checkbox input control it will be
set to checkbox..
2
name
3
value
4
checked
Example
Here is example HTML code for a form with two radio buttons −
<!DOCTYPE html>
<html>
<head>
<title>Radio Box Control</title>
</head>
<body>
<form>
<input type = "radio" name = "subject" value = "maths"> Maths
<input type = "radio" name = "subject" value = "physics"> Physics
</form>
</body>
</html>
Attributes
Following is the list of attributes for radio button.
1 type
Indicates the type of input control and for checkbox input control it will be
set to radio.
2
name
3
value
4
checked
Example
Here is example HTML code for a form with one drop down box
<!DOCTYPE html>
<html>
<head>
<title>Select Box Control</title>
</head>
<body>
<form>
<select name = "dropdown">
<option value = "Maths" selected>Maths</option>
<option value = "Physics">Physics</option>
</select>
</form>
</body>
</html>
Attributes
Following is the list of important attributes of <select> tag −
1 name
Used to give a name to the control which is sent to the server to be
recognized and get the value.
2
size
3
multiple
If set to "multiple" then allows a user to select multiple items from the
menu.
1 value
The value that will be used if an option in the select box box is selected.
2
selected
Specifies that this option should be the initially selected value when the
page loads.
3
label
<!DOCTYPE html>
<html>
<head>
<title>File Upload Box</title>
</head>
<body>
<form>
<input type = "file" name = "fileupload" accept = "image/*" />
</form>
</body>
</html>
Attributes
Following is the list of important attributes of file upload box −
1 name
2
accept
1 submit
2
reset
This creates a button that automatically resets form controls to their initial
values.
3
button
This creates a button that is used to trigger a client-side script when the
user clicks that button.
4
image
Example
Here is example HTML code for a form with three types of buttons −
<!DOCTYPE html>
<html>
<head>
<title>File Upload Box</title>
</head>
<body>
<form>
<input type = "submit" name = "submit" value = "Submit" />
<input type = "reset" name = "reset" value = "Reset" />
<input type = "button" name = "ok" value = "OK" />
<input type = "image" name = "imagebutton" src = "/html/images/logo.png" />
</form>
</body>
</html>
Example
Here is example HTML code to show the usage of hidden control −
<!DOCTYPE html>
<html>
<head>
<title>File Upload Box</title>
</head>
<body>
<form>
<p>This is page 10</p>
<input type = "hidden" name = "pagename" value = "10" />
<input type = "submit" name = "submit" value = "Submit" />
<input type = "reset" name = "reset" value = "Reset" />
</form>
</body>
</html>
Sometimes you need to add music or video into your web page. The easiest
way to add video or sound to your web site is to include the special HTML tag
called <embed>. This tag causes the browser itself to include controls for
the multimedia automatically provided browser supports <embed> tag and
given media type.
You can also include a <noembed> tag for the browsers which don't
recognize the <embed> tag. You could, for example, use <embed> to display
a movie of your choice, and <noembed> to display a single JPG image if
browser does not support <embed> tag.
Example
Here is a simple example to play an embedded midi file −
<!DOCTYPE html>
<html>
<head>
<title>HTML embed Tag</title>
</head>
<body>
<embed src = "/html/yourfile.mid" width = "100%" height = "60" >
<noembed><img src = "yourimage.gif" alt = "Alternative Media" ></noembed>
</embed>
</body>
</html>
You can put any media file in src attribute. You can try it yourself by giving
various types of files.
Note −The align and autostart attributes deprecated in HTML5. Do not use these
attributes.
1 align
Determines how to align the object. It can be set to either center, left or
right.
2
autostart
3
loop
4
playcount
Specifies the number of times to play the sound. This is alternate option
for loop if you are usiong IE.
5
hidden
6
width
7
height
8
name
9
src
10
volume
Controls volume of the sound. Can be from 0 (off) to 100 (full volume).
.swf files − are the file types created by Macromedia's Flash program.
.mpeg files − are movie files created by the Moving Pictures Expert Group.
<!DOCTYPE html>
<html>
<head>
<title>HTML embed Tag</title>
</head>
<body>
<embed src = "/html/yourfile.swf" width = "200" height = "200" >
<noembed><img src = "yourimage.gif" alt = "Alternative Media" ></noembed>
</embed>
</body>
</html>
Background Audio
You can use HTML <bgsound> tag to play a soundtrack in the background
of your webpage. This tag is supported by Internet Explorer only and most of
the other browsers ignore this tag. It downloads and plays an audio file when
the host document is first downloaded by the user and displayed. The
background sound file also will replay whenever the user refreshes the
browser.
This tag is having only two attributes loop and src. Both these attributes have
same meaning as explained above.
Here is a simple example to play a small midi file −
<!DOCTYPE html>
<html>
<head>
<title>HTML embed Tag</title>
</head>
<body>
<bgsound src = "/html/yourfile.mid">
<noembed><img src = "yourimage.gif" ></noembed>
</bgsound>
</body>
</html>
This will produce the blank screen. This tag does not display any component
and remains hidden.
Internet Explorer can also handle only three different sound format files −
wav, the native format for PCs; au, the native format for most Unix
workstations; and MIDI, a universal music-encoding scheme.
Example - 1
You can embed an HTML document in an HTML document itself as follows −
Here alt attribute will come into picture if browser does not
support object tag.
Example - 2
You can embed a PDF document in an HTML document as follows −
Example - 3
You can specify some parameters related to the document with
the <param> tag. Here is an example to embed a wav file −
Example - 4
You can add a flash document as follows −
Example - 5
You can add a java applet into HTML document as follows −
The classid attribute identifies which version of Java Plug-in to use. You can
use the optional codebase attribute to specify if and how to download the
JRE.
Note − The <marquee> tag deprecated in HTML5. Do not use this element, instead you
can use JavaScript and CSS to create such effects.
Syntax
A simple syntax to use HTML <marquee> tag is as follows −
1 width
This specifies the width of the marquee. This can be a value like 10 or 20%
etc.
2
height
This specifies the height of the marquee. This can be a value like 10 or
20% etc.
3
direction
This specifies the direction in which marquee should scroll. This can be a
value like up, down, left or right.
4
behavior
This specifies the type of scrolling of the marquee. This can have a value
like scroll, slide and alternate.
5
scrolldelay
This specifies how long to delay between each jump. This will have a value
like 10 etc.
6
scrollamount
This specifies the speed of marquee text. This can have a value like 10 etc.
7
loop
This specifies how many times to loop. The default value is INFINITE, which
means that the marquee loops endlessly.
8
bgcolor
This specifies background color in terms of color name or color hex value.
9
hspace
This specifies horizontal space around the marquee. This can be a value
like 10 or 20% etc.
10
vspace
This specifies vertical space around the marquee. This can be a value like
10 or 20% etc.
Examples - 1
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>This is basic example of marquee</marquee>
</body>
</html>
Examples - 2
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee width = "50%">This example will take only 50% width</marquee>
</body>
</html>
Examples - 3
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee direction = "right">This text will scroll from left to right</marquee>
</body>
</html>
HTML-Header
We have learnt that a typical HTML document will have following structure −
<head>
Document header related tags
</head>
<body>
Document body related tags
</body>
</html>
This chapter will give a little more detail about header part which is
represented by HTML <head> tag. The <head> tag is a container of various
important tags like <title>, <meta>, <link>, <base>, <style>, <script>,
and <noscript> tags.
<!DOCTYPE html>
<html>
<head>
<title>HTML Title Tag Example</title>
</head>
<body>
<p>Hello, World!</p>
</body>
</html>
Following are few of the important usages of <meta> tag inside an HTML
document −
<!DOCTYPE html>
<html>
<head>
<title>HTML Meta Tag Example</title>
<!-- Tag to tell robots not to index the content of a page -->
<meta name = "robots" content = "noindex, nofollow">
</head>
<body>
<p>Hello, World!</p>
</body>
</html>
For example, all the given pages and images will be searched after prefixing
the given URLs with base URL http://www.tutorialspoint.com/ directory −
<!DOCTYPE html>
<html>
<head>
<title>HTML Base Tag Example</title>
<base href = "http://www.tutorialspoint.com/" />
</head>
<body>
<img src = "/images/logo.png" alt = "Logo Image"/>
<a href = "/html/index.htm" title = "HTML Tutorial"/>HTML Tutorial</a>
</body>
</html>
But if you change base URL to something else, for example, if base URL is
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>
<title>HTML link Tag Example</title>
<base href = "http://www.tutorialspoint.com/" />
<link rel = "stylesheet" type = "text/css" href = "/css/style.css">
</head>
<body>
<p>Hello, World!</p>
</body>
</html>
This will produce the following result −
<!DOCTYPE html>
<html>
<head>
<title>HTML style Tag Example</title>
<base href = "http://www.tutorialspoint.com/" />
<body>
<p class = "myclass">Hello, World!</p>
</body>
</html>
Note – You will learn more about CSS in the second part of this course.
<!DOCTYPE html>
<html>
<head>
<title>HTML script Tag Example</title>
<base href = "http://www.tutorialspoint.com/" />
<body>
<input type = "button" onclick = "Hello();" name = "ok" value = "OK" />
</body>
</html>
Deprecated Tags
The following elements are not available in HTML5 anymore and their function
is better handled by CSS −
Deprecated Attributes
HTML5 has none of the presentational attributes that were in HTML4 as their
functions are better handled by CSS. Some attributes from HTML4 are no
longer allowed in HTML5 at all and they have been removed completely.
rev link, a
shape a
coords a
target link
nohref area
profile head
version html
name img
scheme meta
archive object
classid object
codebase object
codetype object
declare object
standby object
valuetype param
type param
axis td and t
abbr td and t
scope td
align caption, iframe, img, input, object, legend, table, hr, div,
h1, h2, h3, h4, h5, h6, p, col, colgroup, tbody, td, tfoot,
th, thead and tr.
alink body
link body
vlink body
text body
background body
cellpadding table
cellspacing table
char col, colgroup, tbody, td, tfoot, th, thead and tr.
charoff col, colgroup, tbody, td, tfoot, th, thead and tr.
clear br
frame table
frame table
frameborder iframe
hspace img and object.
marginheight iframe
marginwidth iframe
noshade hr
nowrap td and th
rules table
scrolling iframe
size hr
Introduction
CSS is easy to learn and understand but it provides powerful control over the
presentation of an HTML document. Most commonly, CSS is combined with
the markup languages HTML or XHTML.
Advantages of CSS
CSS saves time − You can write CSS once and then reuse same sheet in multiple
HTML pages. You can define a style for each HTML element and apply it to as
many Web pages as you want.
Pages load faster − If you are using CSS, you do not need to write HTML tag
attributes every time. Just write one CSS rule of a tag and apply it to all the
occurrences of that tag. So less code means faster download times.
Easy maintenance − To make a global change, simply change the style, and all
elements in all the web pages will be updated automatically.
Superior styles to HTML − CSS has a much wider array of attributes than HTML,
so you can give a far better look to your HTML page in comparison to HTML
attributes.
Global web standards − Now HTML attributes are being deprecated and it is
being recommended to use CSS. So its a good idea to start using CSS in all the
HTML pages to make them compatible to future browsers.
Offline Browsing − CSS can store web applications locally with the help of an
offline catche.Using of this, we can view offline websites.The cache also ensures
faster loading and better overall performance of the website.
Platform Independence − The Script offer consistent platform independence
and can support latest browsers as well.
NOTE − The World Wide Web Consortium, or W3C is a group that makes
recommendations about how the Internet works and how it should evolve.
CSS Versions
Cascading Style Sheets, level 1 (CSS1) was came out of W3C as a
recommendation in December 1996. This version describes the CSS language
as well as a simple visual formatting model for all the HTML tags.
CSS2 was became a W3C recommendation in May 1998 and builds on CSS1.
This version adds support for media-specific style sheets e.g. printers and
aural devices, downloadable fonts, element positioning and tables.
CSS3 was became a W3C recommendation in June 1999 and builds on older
versions CSS. it has divided into documentations is called as Modules and
here each module having new extension features defined in CSS2
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 −
Note − The font tag 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 work with an example using
the font tag.
<!DOCTYPE html>
<html>
<head>
<title>HTML CSS</title>
</head>
<body>
<p><font color = "green" size = "5">Hello, World!</font></p>
</body>
</html>
We can re-write above example with the help of Style Sheet as follows −
<!DOCTYPE html>
<html>
<head>
<title>HTML CSS</title>
</head>
<body>
<p style = "color:green; font-size:24px;" >Hello, World!</p>
</body>
</html>
Internal Style Sheet − Define style sheet rules in header section of the HTML
document using <style> tag.
Inline Style Sheet − Define style sheet rules directly along-with the HTML
elements using style attribute.
Let's see all the three cases one by one with the help of suitable examples.
Example
Consider we define a style sheet file style.css which has following rules −
.red {
color: red;
}
.thick {
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>
<title>HTML External CSS</title>
<link rel = "stylesheet" type = "text/css" href = "/html/style.css">
</head>
<body>
<p class = "red">This is red</p>
<p class = "thick">This is thick</p>
<p class = "green">This is green</p>
<p class = "thick green">This is thick and green</p>
</body>
</html>
Rules defined in internal style sheet overrides the rules defined in an external
CSS file.
Example
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>
<title>HTML Internal CSS</title>
<style type = "text/css">
.red {
color: red;
}
.thick{
font-size:20px;
}
.green {
color:green;
}
</style>
</head>
<body>
<p class = "red">This is red</p>
<p class = "thick">This is thick</p>
<p class = "green">This is green</p>
<p class = "thick green">This is thick and green</p>
</body>
</html>
Rules defined 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>
<title>HTML Inline CSS</title>
</head>
<body>
<p style = "color:red;">This is red</p>
<p style = "font-size:20px;">This is thick</p>
<p style = "color:green;">This is green</p>
<p style = "color:green;font-size:20px;">This is thick and green</p>
</body>
</html>
This is red
This is thick
This is green
Syntax
CSS comprises of style rules that are interpreted by the browser and then
applied to the corresponding elements in your document. A style rule is made
of three parts −
Selector − A selector is an HTML tag at which a style will be applied. This could
be any tag like <h1> or <table> etc.
Property - A property is a type of attribute of HTML tag. Put simply, all the HTML
attributes are converted into CSS properties. They could be color, border etc.
Value - Values are assigned to properties. For example, color property can have
value either red or #F1F1F1 etc.
Here table is a selector and border is a property and given value 1px solid
#C00 is the value of that property.
You can define selectors in various simple ways based on your comfort. Let
me put these selectors one by one.
h1 {
color: #36CFFF;
}
* {
color: #000000;
}
This rule renders the content of every element in our document in black.
ul em {
color: #000000;
}
.black {
color: #000000;
}
This rule renders the content in black for every element with class attribute
set to black in our document. You can make it a bit more particular. For
example:
h1.black {
color: #000000;
}
This rule renders the content in black for only <h1> elements with class
attribute set to black.
You can apply more than one class selectors to given element. Consider the
following example:
The ID Selectors
You can define style rules based on the id attribute of the elements. All the
elements having that id will be formatted according to the defined rule.
#black {
color: #000000;
}
This rule renders the content in black for every element with id attribute set
to black in our document. You can make it a bit more particular. For example
−
h1#black {
color: #000000;
}
This rule renders the content in black for only <h1> elements
with id attribute set to black.
The true power of id selectors is when they are used as the foundation for
descendant selectors, For example:
#black h2 {
color: #000000;
}
In this example all level 2 headings will be displayed in black color when those
headings will lie with in tags having id attribute set to black.
body > p {
color: #000000;
}
This rule will render all the paragraphs in black if they are direct child of
<body> element. Other paragraphs put inside other elements like <div> or
<td> would not have any effect of this rule.
input[type = "text"]{
color: #000000;
}
The advantage to this method is that the <input type = "submit" /> element
is unaffected, and the color applied only to the desired text fields.
p[lang="fr"] - Selects all paragraph elements whose lang attribute has a value
of exactly "fr".
h1 {
color: #36C;
font-weight: normal;
letter-spacing: .4em;
margin-bottom: 1em;
text-transform: lowercase;
}
Here all the property and value pairs are separated by a semi colon (;). You
can keep them in a single line or multiple lines. For better readability we keep
them into separate lines.
For a while, don't bother about the properties mentioned in the above block.
These properties will be explained in the coming chapters and you can find
complete detail about properties in CSS References.
Grouping Selectors
You can apply a style to many selectors if you like. Just separate the selectors
with a comma, as given in the following example −
h1, h2, h3 {
color: #36C;
font-weight: normal;
letter-spacing: .4em;
margin-bottom: 1em;
text-transform: lowercase;
}
This define style rule will be applicable to h1, h2 and h3 element as well. The
order of the list is irrelevant. All the elements in the selector will have the
corresponding declarations applied to them.
You can combine the various id selectors together as shown below −
Measurement Units
Before we start actual exercise, we would like to give a brief idea about the
CSS Measurement Units.
We have listed out all the CSS Measurement Units along with proper
Examples −
CSS color
CSS uses color values to specify a color. Typically, these are used to set a
color either for the foreground of an element (i.e., its text) or else for the
background of the element. They can also be used to affect the color of
borders and other decorative effects.
You can specify your color values in various formats. Following table lists all
the possible formats −
A hexadecimal value can be taken from any graphics software like Adobe
Photoshop, Jasc Paintshop Pro, or even using Advanced Paint Brush.
#000000
#FF0000
#00FF00
#0000FF
#FFFF00
#00FFFF
#FF00FF
#C0C0C0
#FFFFFF
A hexadecimal value can be taken from any graphics software like Adobe
Photoshop, Jasc Paintshop Pro, or even using Advanced Paint Brush.
#000
#F00
#0F0
#0FF
#FF0
#0FF
#F0F
#FFF
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)
Backgrounds
This chapter teaches you how to set backgrounds of various HTML elements.
You can set the following background properties of an element −
<html>
<head>
<body>
<p style = "background-color:yellow;">
This text has a yellow background color.</p>
</body>
</head>
<html>
<html>
<head>
<style>
body {
background-image: url("/css/images/css.jpg");
background-color: #cccccc;
}
</style>
<body>
<h1>Hello World!</h1>
</body>
</head>
<html>
<html>
<head>
<style>
body {
background-image: url("/css/images/css.jpg");
background-repeat: repeat;
}
</style>
</head>
<body>
<p>Tutorials point</p>
</body>
</html>
<html>
<head>
<style>
body {
background-image: url("/css/images/css.jpg");
background-repeat: repeat-y;
}
</style>
</head>
<body>
<p>Tutorials point</>
</body>
</html>
<html>
<head>
<style>
body {
background-image: url("/css/images/css.jpg");
background-repeat: repeat-x;
}
</style>
</head>
<body>
<p>Tutorials point</>
</body>
</html>
<html>
<head>
<style>
body {
background-image: url("/css/images/css.jpg");
background-position:100px;
}
</style>
</head>
<body>
<p>Tutorials point</>
</body>
</html>
<html>
<head>
<style>
body {
background-image: url("/css/images/css.jpg");
background-position:100px 200px;
}
</style>
</head>
<body>
<p>Tutorials point</>
</body>
</html>
The following example demonstrates how to set the fixed background image.
<!DOCTYPE html>
<html>
<head>
<style>
body {
background-image: url('/css/images/css.jpg');
background-repeat: no-repeat;
background-attachment: fixed;
}
</style>
</head>
<body>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<style>
body {
background-image: url('/css/images/css.jpg');
background-repeat: no-repeat;
background-attachment: fixed;
background-attachment:scroll;
}.
</style>
</head>
<body>
</body>
</html>
Shorthand Property
You can use the background property to set all the background properties at
once. For example −
Fonts
This chapter teaches you how to set fonts of a content, available in an HTML
element. You can set following font properties of an element −
The font-weight property is used to increase or decrease how bold or light a font
appears.
<html>
<head>
</head>
<body>
<p style="font-family:georgia,garamond,serif;">
This text is rendered in either georgia, garamond, or the default serif font
depending on which font you have at your system.
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="font-style:italic;">
This text will be rendered in italic style
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="font-variant:small-caps;">
This text will be rendered as small caps
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="font-weight:bold;">This font is bold.</p>
<p style="font-weight:bolder;">This font is bolder.</p>
<p style="font-weight:500;">This font is 500 weight.</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="font-size:20px;">This font size is 20 pixels</p>
<p style="font-size:small;">This font size is small</p>
<p style="font-size:large;">This font size is large</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="font-size-adjust:0.61;">
This text is using a font-size-adjust value.
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="font-stretch:ultra-expanded;">
If this doesn't appear to work, it is likely that your computer doesn't have
a
condensed or expanded version of the font being used.
</p>
</body>
</html>
Shorthand Property
You can use the font property to set all the font properties at once. For
example −
<html>
<head>
</head>
<body>
<p style="font:italic small-caps bold 15px georgia;">
Applying all the properties on the text at once.
</p>
</body>
</html>
Text Formatting
This chapter teaches you how to manipulate text using CSS properties. You
can set following text properties of an element −
The letter-spacing property is used to add or subtract space between the letters
that make up a word.
The word-spacing property is used to add or subtract space between the words
of a sentence.
The white-space property is used to control the flow and formatting of text.
The text-shadow property is used to set the text shadow around a text.
<html>
<head>
</head>
<body>
<p style="color:red;">
This text will be written in red.
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="direction:rtl;">
This text will be renedered from right to left
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="letter-spacing:5px;">
This text is having space between letters.
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="word-spacing:5px;">
This text is having space between words.
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="text-indent:1cm;">
This text will have first line indented by 1cm and this line will remain at
its actual position this is done by CSS text-indent property.
</p>
</body>
</html>
This text will have first line indented by 1cm and this line will remain at its actual
position this is done by CSS text-indent property.
<html>
<head>
</head>
<body>
<p style="text-align:right;">
This will be right aligned.
</p>
<p style="text-align:center;">
This will be center aligned.
</p>
<p style="text-align:left;">
This will be left aligned.
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="text-decoration:underline;">
This will be underlined
</p>
<p style="text-decoration:line-through;">
This will be striked through.
</p>
<p style="text-decoration:overline;">
This will have a over line.
</p>
<p style="text-decoration:blink;">
This text will have blinking effect
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="text-transform:capitalize;">
This will be capitalized
</p>
<p style="text-transform:uppercase;">
This will be in uppercase
</p>
<p style="text-transform:lowercase;">
This will be in lowercase
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="white-space:pre;">
This text has a line break and the white-space pre setting tells the browser to
honor
it just like the HTML pre tag.</p>
</body>
</html>
This text has a line break and the white-space pre setting tells the browser to honor
it just like the HTML pre tag.
<html>
<head>
</head>
<body>
<p style="text-shadow:4px 4px 8px blue;">
If your browser supports the CSS text-shadow property, this text will have a
blue shadow.
</p>
</body>
</html>
If your browser supports the CSS text-shadow property, this text will have a blue
shadow.
<html>
<head>
</head>
<body>
<img style="border:0px;" src="/css/images/logo.png" />
<br />
<img style="border:3px dashed red;" src="/css/images/logo.png" />
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<img style="border:1px solid red; height:100px;" src="/css/images/logo.png" />
<br />
<img style="border:1px solid red; height:50%;" src="/css/images/logo.png" />
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<img style="border:1px solid red; width:150px;" src="/css/images/logo.png" />
<br />
<img style="border:1px solid red; width:100%;" src="/css/images/logo.png" />
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<img style="border:1px solid red;-moz-opacity:0.4;filter:alpha(opacity=40);"
src="/css/images/logo.png" />
</body>
</html>
LINKs
This chapter teaches you how to set different properties of a hyper link using
CSS. You can set following properties of a hyper link
The :hover signifies an element that currently has the user's mouse pointer
hovering over it.
Usually, all these properties are kept in the header part of the HTML
document.
Remember a:hover MUST come after a:link and a:visited in the CSS definition
in order to be effective. Also, a:active MUST come after a:hover in the CSS
definition as follows −
<style type="text/css">
a:link {color: #000000}
a:visited {color: #006600}
a:hover {color: #FFCC00}
a:active {color: #FF00CC}
</style>
Now, we will see how to use these properties to give different effects to
hyperlinks.
<html>
<head>
<style type="text/css">
a:link {color:#000000}
</style>
</head>
<body>
<a href="">Link</a>
</body>
</html>
<html>
<head>
<style type="text/css">
a:visited {color: #006600}
</style>
</head>
<body>
<a href=""> link</a>
</body>
</html>
It will produce the following link. Once you will click this link, it will change
its color to green.
<html>
<head>
<style type="text/css">
a:hover {color: #FFCC00}
</style>
</head>
<body>
<a href="">Link</a>
</body>
</html>
It will produce the following link. Now, you bring your mouse over this link
and you will see that it changes its color to yellow.
<html>
<head>
<style type="text/css">
a:active {color: #FF00CC}
</style>
</head>
<body>
<a href="">Link</a>
</body>
</html>
It will produce the following link. It will change its color to pink when the user
clicks it.
Tables
This tutorial will teach you how to set different properties of an HTML table
using CSS. You can set following properties of a table −
The border-spacing specifies the width that should appear between table cells.
The empty-cells specifies whether the border should be shown if a cell is empty.
The table-layout allows browsers to speed up layout of a table by using the first
width properties it comes across for the rest of a column rather than having to
load the whole table before rendering it.
<html>
<head>
<style type="text/css">
table.one {border-collapse:collapse;}
table.two {border-collapse:separate;}
td.a {
border-style:dotted;
border-width:3px;
border-color:#000000;
padding: 10px;
}
td.b {
border-style:solid;
border-width:3px;
border-color:#333333;
padding:10px;
}
</style>
</head>
<body>
<table class="one">
<caption>Collapse Border Example</caption>
<tr><td class="a"> Cell A Collapse Example</td></tr>
<tr><td class="b"> Cell B Collapse Example</td></tr>
</table>
<br />
<table class="two">
<caption>Separate Border Example</caption>
<tr><td class="a"> Cell A Separate Example</td></tr>
<tr><td class="b"> Cell B Separate Example</td></tr>
</table>
</body>
</html>
It will produce the following result –
If you provide one value, it will applies to both vertical and horizontal borders.
Or you can specify two values, in which case, the first refers to the horizontal
spacing and the second to the vertical spacing −
<style type="text/css">
/* If you provide one value */
table.example {border-spacing:10px;}
/* This is how you can provide two values */
table.example {border-spacing:10px; 15px;}
</style>
Now let's modify the previous example and see the effect −
<html>
<head>
<style type="text/css">
table.one {
border-collapse:separate;
width:400px;
border-spacing:10px;
}
table.two {
border-collapse:separate;
width:400px;
border-spacing:10px 50px;
}
</style>
</head>
<body>
</body>
</html>
This property can have one of the four values top, bottom, left or right. The
following example uses each value.
<html>
<head>
<style type="text/css">
caption.top {caption-side:top}
caption.bottom {caption-side:bottom}
caption.left {caption-side:left}
caption.right {caption-side:right}
</style>
</head>
<body>
</body>
</html>
This property can have one of the three values - show, hide or inherit.
Here is the empty-cells property used to hide borders of empty cells in the
<table> element.
<html>
<head>
<style type="text/css">
table.empty{
width:350px;
border-collapse:separate;
empty-cells:hide;
}
td.empty{
padding:5px;
border-style:solid;
border-width:1px;
border-color:#999999;
}
</style>
</head>
<body>
<table class="empty">
<tr>
<th></th>
<th>Title one</th>
<th>Title two</th>
</tr>
<tr>
<th>Row Title</th>
<td class="empty">value</td>
<td class="empty">value</td>
</tr>
<tr>
<th>Row Title</th>
<td class="empty">value</td>
<td class="empty"></td>
</tr>
</table>
</body>
</html>
This property can have one of the three values: fixed, auto or inherit.
<html>
<head>
<style type="text/css">
table.auto {
table-layout: auto
}
table.fixed{
table-layout: fixed
}
</style>
</head>
<body>
</body>
</html>
Borders
The border properties allow you to specify how the border of the box
representing an element should look. There are three properties of a border
you can change:
The border-style specifies whether a border should be solid, dashed line, double
line, or one of the other possible values.
<html>
<head>
<style type="text/css">
p.example1{
border:1px solid;
border-bottom-color:#009900; /* Green */
border-top-color:#FF0000; /* Red */
border-left-color:#330000; /* Black */
border-right-color:#0000CC; /* Blue */
}
p.example2{
border:1px solid;
border-color:#009900; /* Green */
}
</style>
</head>
<body>
<p class="example1">
This example is showing all borders in different colors.
</p>
<p class="example2">
This example is showing all borders in green color only.
</p>
</body>
</html>
inset: Border makes the box look like it is embedded in the page.
outset: Border makes the box look like it is coming out of the canvas.
You can individually change the style of the bottom, left, top, and right
borders of an element using the following properties −
<html>
<head>
</head>
<body>.
<p style="border-width:4px; border-style:none;">
This is a border with none width.
</p>
<p style="border-width:4px;border-top-style:solid;
border-bottom-style:dashed; border-left-style:groove; border-right-
style:double;">
This is a a border with four different styles.
</p>
</body>
</html>
You can individually change the width of the bottom, top, left, and right
borders of an element using the following properties −
<html>
<head>
</head>
<body>
<p style="border-width:4px; border-style:solid;">
This is a solid border whose width is 4px.
</p>
<p style="border-bottom-width:4px;border-top-width:10px;
border-left-width: 2px;border-right-width:15px;border-style:solid;">
This is a a border with four different width.
</p>
</body>
</html>
The following example shows how to use all the three properties into a single
property. This is the most frequently used property to set border around any
element.
<html>
<head>
</head>
<body>
<p style="border:4px solid red;">
This example is showing shorthand property for border.
</p>
</body>
</html>
Margins
The values of the margin property are not inherited by the child elements.
Remember that the adjacent vertical margins (top and bottom margins) will
collapse into each other so that the distance between the blocks is not the
sum of the margins, but only the greater of the two margins or the same size
as one margin if both are equal.
The margin specifies a shorthand property for setting the margin properties in
one declaration.
Here is an example −
<html>
<head>
</head>
<body>
<p style="margin: 15px; border:1px solid black;">
all four margins will be 15px
</p>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="margin-bottom: 15px; border:1px solid black;">
This is a paragraph with a specified bottom margin.
</p>
Here is an example −
<html>
<head>
</head>
<body>
<p style="margin-top: 15px; border:1px solid black;">
This is a paragraph with a specified top margin
</p>
Here is an example:
<html>
<head>
</head>
<body>
<p style="margin-left: 15px; border:1px solid black;">
This is a paragraph with a specified left margin
</p>
Here is an example −
<html>
<head>
</head>
<body>
<p style="margin-right: 15px; border:1px solid black;">
This is a paragraph with a specified right margin
</p>
Lists
Lists are very helpful in conveying a set of either numbered or bullet points.
This chapter teaches you how to control list type, position, style, etc., using
CSS.
We have the following five CSS properties, which can be used to control lists:
The list-style-type allows you to control the shape or appearance of the marker.
The list-style-position specifies whether a long point that wraps to a second line
should align with the first line or start underneath the start of the marker.
The list-style-image specifies an image for the marker rather than a bullet point
or number.
The marker-offset specifies the distance between a marker and the text in the
list.
Here are the values which can be used for an unordered list −
Value Description
None NA
Here are the values, which can be used for an ordered list −
Here is an example −
<html>
<head>
</head>
<body>
<ul style="list-style-type:circle;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ul>
<ul style="list-style-type:square;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ul>
<ol style="list-style-type:decimal;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ol>
<ol style="list-style-type:lower-alpha;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ol>
<ol style="list-style-type:lower-roman;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ol>
</body>
</html>
o Maths
o Social Science
o Physics
Maths
Social Science
Physics
1. Maths
2. Social Science
Value Description
None NA
Inside If the text goes onto a second line, the text will wrap underneath the
marker. It will also appear indented to where the text would have started
if the list had a value of outside.
outside If the text goes onto a second line, the text will be aligned with the start
of the first line (to the right of the bullet).
Here is an example −
<html>
<head>
</head>
<body>
<ul style="list-style-type:circle; list-style-position:outside;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ul>
<ul style="list-style-type:square;list-style-position:inside;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ul>
<ol style="list-style-type:decimal;list-style-position:outside;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ol>
<ol style="list-style-type:lower-alpha;list-style-position:inside;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ol>
</body>
</html>
o Maths
o Social Science
o Physics
Maths
Social Science
Physics
1. Maths
2. Social Science
3. Physics
a. Maths
b. Social Science
Here is an example −
<html>
<head>
</head>
<body>
<ul>
<li style="list-style-image: url(/https/www.scribd.com/images/bullet.gif);">Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ul>
<ol>
<li style="list-style-image: url(/https/www.scribd.com/images/bullet.gif);">Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ol>
</body>
</html>
It will produce the following result –
Maths
Social Science
Physics
1. Maths
2. Social Science
3. Physics
Here is an example −
<html>
<head>
</head>
<body>
<ul style="list-style: inside square;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ul>
Maths
Social Science
Physics
A. Maths
B. Social Science
C. Physics
Here is an example −
<html>
<head>
</head>
<body>
<ul style="list-style: inside square; marker-offset:2em;">
<li>Maths</li>
<li>Social Science</li>
<li>Physics</li>
</ul>
</html>
Maths
Social Science
Physics
A. Maths
B. Social Science
C. Physics
Padding
The padding property allows you to specify how much space should appear
between the content of an element and its border −
The following CSS properties can be used to control lists. You can also set
different values for the padding on each side of the box using the following
properties −
Here is an example −
<html>
<head>
</head>
<body>
<p style="padding-bottom: 15px; border:1px solid black;">
This is a paragraph with a specified bottom padding
</p>
</html>
<html>
<head>
</head>
<body>
<p style="padding-top: 15px; border:1px solid black;">
This is a paragraph with a specified top padding
</p>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="padding-left: 15px; border:1px solid black;">
This is a paragraph with a specified left padding
</p>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="padding-right: 15px; border:1px solid black;">
This is a paragraph with a specified right padding
</p>
<p style="padding-right: 5%; border:1px solid black;">
This is another paragraph with a specified right padding in percent
</p>
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="padding: 15px; border:1px solid black;">
all four padding will be 15px
</p>
</html>
top and bottom padding will be 10px, left and right padding will be 2% of the total
width of the document.
top padding will be 10px, left and right padding will be 2% of the total width of the
document, bottom padding will be 10px
top padding will be 10px, right padding will be 2% of the total width of the document,
bottom padding and top padding will be
Cursors
The cursor property of CSS allows you to specify the type of cursor that
should be displayed to the user.
One good usage of this property is in using images for submit buttons on
forms. By default, when a cursor hovers over a link, the cursor changes from
a pointer to a hand. However, it does not change form for a submit button
on a form. Therefore, whenever someone hovers over an image that is a
submit button, it provides a visual clue that the image is clickable.
The following table shows the possible values for the cursor property −
Value Description
auto Shape of the cursor depends on the context area it is over. For
example, an 'I' over text, a 'hand' over a link, and so on.
default An arrow
help A question mark or balloon, ideal for use over help buttons.
NOTE: You should try to use only these values to add helpful information for
users, and in places, they would expect to see that cursor. For example, using
the crosshair when someone hovers over a link can confuse visitors.
Here is an example −
<html>
<head>
</head>
<body>
<p>Move the mouse over the words to see the cursor change:</p>
<div style="cursor:auto">Auto</div>
<div style="cursor:crosshair">Crosshair</div>
<div style="cursor:default">Default</div>
<div style="cursor:pointer">Pointer</div>
<div style="cursor:move">Move</div>
<div style="cursor:e-resize">e-resize</div>
<div style="cursor:ne-resize">ne-resize</div>
<div style="cursor:nw-resize">nw-resize</div>
<div style="cursor:n-resize">n-resize</div>
<div style="cursor:se-resize">se-resize</div>
<div style="cursor:sw-resize">sw-resize</div>
<div style="cursor:s-resize">s-resize</div>
<div style="cursor:w-resize">w-resize</div>
<div style="cursor:text">text</div>
<div style="cursor:wait">wait</div>
<div style="cursor:help">help</div>
</body>
</html>
Outlines
Outlines are very similar to borders, but there are few major differences as
well −
Outline is always the same on all sides; you cannot specify different values for
different sides of an element.
The outline-style property is used to set the line style for the outline.
The outline property is used to set all the above three properties in a single
statement.
Here is an example −
<html>
<head>
</head>
<body>
<p style="outline-width:thin; outline-style:solid;">
This text is having thin outline.
</p>
<br />
</html>
inset: Outline makes the box look like it is embedded in the page.
outset: Outline makes the box look like it is coming out of the canvas.
Here is an example −
<html>
<head>
</head>
<body>
<p style="outline-width:thin; outline-style:solid;">
This text is having thin solid outline.
</p>
<br />
<p style="outline-width:5px;outline-style:dotted;">
This text is having 5x dotted outline.
</p>
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="outline-width:thin; outline-style:solid;outline-color:red">
This text is having thin solid red outline.
</p>
<br />
<p style="outline-width:5px;outline-style:dotted;outline-color:rgb(13,33,232)">
This text is having 5x dotted blue outline.
</p>
</body>
</html>
The outline Property
The outline property is a shorthand property that allows you to specify values
for any of the three properties discussed previously in any order but in a
single statement.
Here is an example −
<html>
<head>
</head>
<body>
<p style="outline:thin solid red;">
This text is having thin solid red outline.
</p>
<br />
</html>
Dimension
You have seen the border that surrounds every box ie. element, the padding
that can appear inside each box and the margin that can go around them. In
this tutorial we will learn how we can change the dimensions of boxes.
We have the following properties that allow you to control the dimensions of
a box.
The max-height property is used to set a maximum height that a box can be.
The min-height property is used to set the minimum height that a box can be.
The max-width property is used to set the maximum width that a box can be.
The min-width property is used to set the minimum width that a box can be.
Here is an example −
<html>
<head>
</head>
<body>
<p style="width:400px; height:100px; border:1px solid red; padding:5px;
margin:10px;">
This paragraph is 400pixels wide and 100 pixels high
</p>
</body>
</html>
<html>
<head>
</head>
<body>
<p style="width:400px; height:100px; border:1px solid red; padding:5px;
margin:10px; line-height:30px;">
This paragraph is 400pixels wide and 100 pixels high and here line height is
30pixels.
This paragraph is 400 pixels wide and 100 pixels high and here line height is
30pixels.
</p>
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="width:400px; max-height:10px; border:1px solid red; padding:5px;
margin:10px;">
This paragraph is 400px wide and max height is 10px
This paragraph is 400px wide and max height is 10px
This paragraph is 400px wide and max height is 10px
This paragraph is 400px wide and max height is 10px
</p>
<br>
<br>
<br>
<img alt="logo" src="/css/images/logo.png" width="195" height="84" />
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="width:400px; min-height:200px; border:1px solid red; padding:5px;
margin:10px;">
This paragraph is 400px wide and min height is 200px
This paragraph is 400px wide and min height is 200px
This paragraph is 400px wide and min height is 200px
This paragraph is 400px wide and min height is 200px
</p>
<img alt="logo" src="/css/images/logo.png" width="95" height="84" />
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="max-width:100px; height:200px; border:1px solid red; padding:5px;
margin:10px;">
This paragraph is 200px high and max width is 100px
This paragraph is 200px high and max width is 100px
</p>
<img alt="logo" src="/css/images/logo.png" width="95" height="84" />
</body>
</html>
Here is an example −
<html>
<head>
</head>
<body>
<p style="min-width:400px; height:100px; border:1px solid red; padding:5px;
margin:10px;">
This paragraph is 100px high and min width is 400px
This paragraph is 100px high and min width is 400px
<img alt="logo" src="/css/images/css.gif" width="95" height="84" />
</body>
</html>
Scroll Bars
There may be a case when an element's content might be larger than the
amount of space allocated to it. For example, given width and height
properties do not allow enough room to accommodate the content of the
element.
CSS provides a property called overflow which tells the browser what to do if
the box's contents is larger than the box itself. This property can take one of
the following values −
Value Description
visible Allows the content to overflow the borders of its containing element.
hidden The content of the nested element is simply cut off at the border of the
containing element and no scrollbars is visible.
scroll The size of the containing element does not change, but the scrollbars are
added to allow the user to scroll to see the content.
auto The purpose is the same as scroll, but the scrollbar will be shown only if
the content does overflow.
Here is an example −
<html>
<head>
</head>
<style type="text/css">
.scroll{
display:block;
border: 1px solid red;
padding:5px;
margin-top:5px;
width:300px;
height:50px;
overflow:scroll;
}
.auto{
display:block;
border: 1px solid red;
padding:5px;
margin-top:5px;
width:300px;
height:50px;
overflow:auto;
}
</style>
<body>
<div class="auto">
I am going to keep lot of content here just to show you how scrollbars works if
there is an overflow in an element box.
This provides your horizontal as well as vertical scrollbars.
</div>
</body>
</html>