What is an HTML File?
- HTML stands for
Hyper Text Markup Language
- An HTML file is
a text file containing small markup tags
- The markup tags
tell the Web browser how to display the page
- An HTML file
must have an htm or html file extension
- An HTML file
can be created using a simple text editor
Do You Want to Try It?
If you are running
Windows, start Notepad.If you are on a Mac, start SimpleText.
In OSX start TextEdit and change the following preferences: Open the "Format" menu and select "Plain text" instead of "Rich text". Then open the "Preferences" window under the "Text Edit" menu and select "Ignore rich text commands in HTML files". Your HTML code will probably not work if you do not change the preferences above!
Type in the following text:
<html>
<head>
<title>Title of page</title>
</head>
<body>
This is my first homepage. <b>This text is bold</b>
</body>
</html>
|
Start your Internet browser. Select "Open" (or "Open Page") in the File menu of your browser. A dialog box will appear. Select "Browse" (or "Choose File") and locate the HTML file you just created - "mypage.htm" - select it and click "Open". Now you should see an address in the dialog box, for example "C:\MyDocuments\mypage.htm". Click OK, and the browser will display the page.
Example Explained
The first tag in your
HTML document is <html>. This tag tells your browser that this is the
start of an HTML document. The last tag in your document is </html>. This
tag tells your browser that this is the end of the HTML document.The text between the <head> tag and the </head> tag is header information. Header information is not displayed in the browser window.
The text between the <title> tags is the title of your document. The title is displayed in your browser's caption.
The text between the <body> tags is the text that will be displayed in your browser.
The text between the <b> and </b> tags will be displayed in a bold font.
HTM or HTML Extension?
When you save an HTML
file, you can use either the .htm or the .html extension. We have used .htm in
our examples. It might be a bad habit inherited from the past when some of the
commonly used software only allowed three letter extensions.With newer software we think it will be perfectly safe to use .html.
Note on HTML Editors:
You can easily edit
HTML files using a WYSIWYG (what you see is what you get) editor like FrontPage
or Dreamweaver, instead of writing your markup tags in a plain text file.However, if you want to be a skillful Web developer, we strongly recommend that you use a plain text editor to learn your primer HTML.
Frequently Asked Questions
Q: After I have
edited an HTML file, I cannot view the result in my browser. Why?A: Make sure that you have saved the file with a proper name and extension like "c:\mypage.htm". Also make sure that you use the same name when you open the file in your browser.
Q: I have edited an HTML file, but the changes don't show in the browser. Why?
A: A browser caches pages so it doesn't have to read the same page twice. When you have modified a page, the browser doesn't know that. Use the browser's refresh/reload button to force the browser to reload the page.
Q: What browser should I use?
A: You can do all the training with all of the well-known browsers, like Internet Explorer, Firefox, Netscape, or Opera. However, some of the examples in our advanced classes require the latest versions of the browsers.
Q: Does my computer have to run Windows? What about a Mac?
A: You can do all your training on a non-Windows computer like a Mac.
HTML documents are text
files made up of HTML elements.
HTML elements are
defined using HTML tags.
HTML Tags
- HTML tags are
used to mark-up HTML elements
- HTML tags are
surrounded by the two characters < and >
- The surrounding
characters are called angle brackets
- HTML tags
normally come in pairs like <b> and </b>
- The first tag
in a pair is the start tag, the second tag is the end tag
- The text
between the start and end tags is the element content
- HTML tags are not
case sensitive, <b> means the same as <B>
HTML Elements
Remember the HTML
example from the previous page:<html>
<head>
<title>Title of page</title>
</head>
<body>
This is my first homepage. <b>This text is bold</b>
</body>
</html>
|
<b>This text is bold</b>
|
The content of the HTML element is: This text is bold
The HTML element ends with an end tag: </b>
The purpose of the <b> tag is to define an HTML element that should be displayed as bold.
This is also an HTML element:
<body>
This is my first homepage. <b>This text is bold</b>
</body>
|
The purpose of the <body> tag is to define the HTML element that contains the body of the HTML document.
Why do We Use Lowercase Tags?
We have just said that
HTML tags are not case sensitive: <B> means the same as <b>. If you
surf the Web, you will notice that plenty of web sites use uppercase HTML tags
in their source code. We always use lowercase tags. Why?If you want to follow the latest web standards, you should always use lowercase tags. The World Wide Web Consortium (W3C) recommends lowercase tags in their HTML 4 recommendation, and XHTML (the next generation HTML) demands lowercase tags.
The most important tags
in HTML are tags that define headings, paragraphs and line breaks.
The best way to learn
HTML is to work with examples. We have created a very nice HTML editor for you.
With this editor, you can edit the HTML source code if you like, and click on a
test button to view the result.
Try it Yourself - Examples
A very simple HTML documentThis example is a very simple HTML document, with only a minimum of HTML tags. It demonstrates how the text inside a body element is displayed in the browser.
Simple paragraphs
This example demonstrates how the text inside paragraph elements is displayed in the browser.
(You can find more examples at the bottom of this page)
Headings
Headings are defined
with the <h1> to <h6> tags. <h1> defines the largest heading.
<h6> defines the smallest heading.<h1>This is a heading</h1>
<h2>This is a heading</h2>
<h3>This is a heading</h3>
<h4>This is a heading</h4>
<h5>This is a heading</h5>
<h6>This is a heading</h6>
|
Paragraphs
Paragraphs are defined
with the <p> tag.<p>This is a paragraph</p>
<p>This is another paragraph</p>
|
Don't Forget the Closing Tag
You might have noticed
that paragraphs can be written without end tags </p>:<p>This is a paragraph
<p>This is another paragraph
|
Closing all HTML elements with an end tag is a future proof way of writing HTML. It also makes the code easier to understand (read and browse) when you to mark both where an element starts and where it ends.
Line Breaks
The <br> tag is
used when you want to break a line, but don't want to start a new paragraph.
The <br> tag forces a line break wherever you place it.<p>This <br> is a para<br>graph with line breaks</p>
|
The <br> tag is an empty tag. It has no end tag like </br>, since a closing tag doesn't make any sense.
<br> or <br />
More and more often you
will see the <br> tag written like this: <br />Because the <br> tag has no end tag (or closing tag), it breaks one of the rules for future HTML (the XML based XHTML), namely that all elements must be closed.
Writing it like <br /> is a future proof way of closing (or ending) the tag inside the opening tag, accepted by both HTML and XML.
Comments in HTML
The comment tag is used
to insert a comment in the HTML source code. A comment will be ignored by the
browser. You can use comments to explain your code, which can help you when you
edit the source code at a later date.<!-- This is a comment -->
|
Recap on HTML Elements
- Each HTML
element has an element name (body, h1, p, br)
- The start
tag is the name surrounded by angle brackets: <h1>
- The end tag
is a slash and the name surrounded by angle brackets </h1>
- The element
content occurs between the start tag and the end tag
- Some HTML
elements have no content
- Some HTML
elements have no end tag
Basic Notes - Useful Tips
When you write HTML
text, you can never be sure how the text is displayed in another browser. Some
people have large computer displays, some have small. The text will be
reformatted every time the user resizes his window. Never try to format the
text in your editor by adding empty lines and spaces to the text.HTML will truncate the spaces in your text. Any number of spaces count as one. Some extra information: In HTML a new line counts as one space.
Using empty paragraphs <p> to insert blank lines is a bad habit. Use the <br> tag instead. (But don't use the <br> tag to create lists. Wait until you have learned about HTML lists.)
HTML automatically adds an extra blank line before and after some elements, like before and after a paragraph, and before and after a heading.
We use a horizontal rule (the <hr> tag), to separate the sections in our tutorials.
More Examples
More paragraphsThis example demonstrates some of the default behaviors of paragraph elements.
Line breaks
This example demonstrates the use of line breaks in an HTML document.
Poem problems
This example demonstrates some problems with HTML formatting.
Headings
This example demonstrates the tags that display headings in an HTML document.
Horizontal rule
This example demonstrates how to insert a horizontal rule.
Hidden comments
This example demonstrates how to insert a hidden comment in the HTML source code.
Basic HTML Tags
If you lookup the basic
HTML tags in the reference below, you will see that the reference contains
additional information about tag attributes.You will learn more about HTML tag attributes in the next chapter of this tutorial.
Tag
|
Description
|
Defines an HTML document
|
|
Defines the document's body
|
|
Defines header 1 to header 6
|
|
Defines a paragraph
|
|
Inserts a single line break
|
|
Defines a horizontal rule
|
|
Defines a comment
|
Attributes provide additional
information to an HTML element.
HTML Tag Attributes
HTML tags can have attributes. Attributes provide
additional information to an HTML element.
Attributes always come
in name/value pairs like this: name="value".Attributes are always specified in the start tag of an HTML element.
Attributes Example 1:
<h1> defines the
start of a heading. <h1 align="center"> has additional information about the alignment.
Try it yourself: Center aligned heading
Attributes Example 2:
<body> defines
the body of an HTML document. <body bgcolor="yellow"> has additional information about the background color.
Try it yourself: Background color
Attributes Example 3:
<table> defines
an HTML table. (You will learn more about HTML tables later)<table border="1"> has additional information about the border around the table.
Use Lowercase Attributes
Attributes and
attribute values are case-insensitive. However, the World Wide Web Consortium
(W3C) recommends lowercase attributes/attribute values in their HTML 4
recommendation, and XHTML demands lowercase attributes/attribute values.
Always Quote Attribute Values
Attribute values should
always be enclosed in quotes. Double style quotes are the most common, but
single style quotes are also allowed.In some rare situations, like when the attribute value itself contains quotes, it is necessary to use single quotes:
name='John "ShotGun" Nelson'
HTML defines a lot of
elements for formatting output, like bold or italic text.
Below are a lot of
examples that you can try out yourself:
Examples
Text formattingThis example demonstrates how you can format text in an HTML document.
Preformatted text
This example demonstrates how you can control the line breaks and spaces with the pre tag.
"Computer output" tags
This example demonstrates how different "computer output" tags will be displayed.
Address
This example demonstrates how to write an address in an HTML document.
Abbreviations and acronyms
This example demonstrates how to handle an abbreviation or an acronym.
Text direction
This example demonstrates how to change the text direction.
Quotations
This example demonstrates how to handle long and short quotations.
Deleted and inserted text
This example demonstrates how to mark a text that is deleted or inserted to a document.
How to View HTML Source
Have you ever seen a
Web page and wondered "Hey! How did they do that?"To find out, click the VIEW option in your browser's toolbar and select SOURCE or PAGE SOURCE. This will open a window that shows you the HTML code of the page.
Text Formatting Tags
Tag
|
Description
|
Defines bold text
|
|
Defines big text
|
|
Defines emphasized text
|
|
Defines italic text
|
|
Defines small text
|
|
Defines strong text
|
|
Defines subscripted text
|
|
Defines superscripted text
|
|
Defines inserted text
|
|
Defines deleted text
|
|
Deprecated. Use <del> instead
|
|
Deprecated. Use <del> instead
|
|
Deprecated. Use styles instead
|
"Computer Output" Tags
Tag
|
Description
|
Defines computer code text
|
|
Defines keyboard text
|
|
Defines sample computer code
|
|
Defines teletype text
|
|
Defines a variable
|
|
Defines preformatted text
|
|
<listing>
|
Deprecated. Use <pre> instead
|
<plaintext>
|
Deprecated. Use <pre> instead
|
<xmp>
|
Deprecated. Use <pre> instead
|
Citations, Quotations, and
Definition Tags
Tag
|
Description
|
Defines an abbreviation
|
|
Defines an acronym
|
|
Defines an address element
|
|
Defines the text direction
|
|
Defines a long quotation
|
|
Defines a short quotation
|
|
Defines a citation
|
|
Defines a definition term
|
Some characters like
the < character, have a special meaning in HTML, and therefore cannot be
used in the text.
To display a less than
sign (<) in HTML, we have to use a character entity.
Character Entities
Some characters have a
special meaning in HTML, like the less than sign (<) that defines the start
of an HTML tag. If we want the browser to actually display these characters we
must insert character entities in the HTML source.A character entity has three parts: an ampersand (&), an entity name or a # and an entity number, and finally a semicolon (;).
To display a less than sign in an HTML document we must write: < or <
The advantage of using a name instead of a number is that a name is easier to remember. The disadvantage is that not all browsers support the newest entity names, while the support for entity numbers is very good in almost all browsers.
Note that the entities are case sensitive.
This example lets you experiment with character entities: Character Entities
Non-breaking Space
The most common
character entity in HTML is the non-breaking space.Normally HTML will truncate spaces in your text. If you write 10 spaces in your text HTML will remove 9 of them. To add spaces to your text, use the character entity.
The Most Common Character
Entities:
Result
|
Description
|
Entity Name
|
Entity Number
|
|
non-breaking space
|
|
 
|
<
|
less than
|
<
|
<
|
>
|
greater than
|
>
|
>
|
&
|
ampersand
|
&
|
&
|
"
|
quotation mark
|
"
|
"
|
'
|
apostrophe
|
' (does not work in IE)
|
'
|
Some Other Commonly Used
Character Entities:
Result
|
Description
|
Entity Name
|
Entity Number
|
¢
|
cent
|
¢
|
¢
|
£
|
pound
|
£
|
£
|
¥
|
yen
|
¥
|
¥
|
€
|
euro
|
€
|
€
|
§
|
section
|
§
|
§
|
©
|
copyright
|
©
|
©
|
®
|
registered trademark
|
®
|
®
|
×
|
multiplication
|
×
|
×
|
÷
|
division
|
÷
|
÷
|
HTML uses a hyperlink
to link to another document on the Web.
Examples
Create hyperlinksThis example demonstrates how to create links in an HTML document.
An image as a link
This example demonstrates how to use an image as a link.
(You can find more examples at the bottom of this page)
The Anchor Tag and the Href
Attribute
HTML uses the
<a> (anchor) tag to create a link to another document.An anchor can point to any resource on the Web: an HTML page, an image, a sound file, a movie, etc.
The syntax of creating an anchor:
<a href="url">Text to be displayed</a>
|
This anchor defines a link to W3Schools:
<a href="http://www.w3schools.com/">Visit W3Schools!</a>
|
Visit W3Schools!
The Target Attribute
With the target
attribute, you can define where the linked document will be opened.The line below will open the document in a new browser window:
<a href="http://www.w3schools.com/"
target="_blank">Visit W3Schools!</a>
|
The Anchor Tag and the Name
Attribute
The name attribute is
used to create a named anchor. When using named anchors we can create links
that can jump directly into a specific section on a page, instead of letting
the user scroll around to find what he/she is looking for.Below is the syntax of a named anchor:
<a name="label">Text to be displayed</a>
|
The line below defines a named anchor:
<a name="tips">Useful Tips Section</a>
|
To link directly to the "tips" section, add a # sign and the name of the anchor to the end of a URL, like this:
<a href="http://www.w3schools.com/html_links.asp#tips">
Jump to the Useful Tips Section</a>
|
<a href="#tips">Jump to the Useful Tips Section</a>
|
Basic Notes - Useful Tips
Always add a trailing
slash to subfolder references. If you link like this:
href="http://www.w3schools.com/html", you will generate two HTTP
requests to the server, because the server will add a slash to the address and
create a new request like this: href="http://www.w3schools.com/html/"
Named anchors are often used to create "table of contents" at the beginning of a large document. Each chapter within the document is given a named anchor, and links to each of these anchors are put at the top of the document.
If a browser cannot find a named anchor that has been specified, it goes to the top of the document. No error occurs.
More Examples
Open a link in a new browser windowThis example demonstrates how to link to another page by opening a new window, so that the visitor does not have to leave your Web site.
Link to a location on the same page
This example demonstrates how to use a link to jump to another part of a document.
Break out of a frame
This example demonstrates how to break out of a frame, if your site is locked in a frame.
Create a mailto link
This example demonstrates how to link to a mail message (will only work if you have mail installed).
Create a mailto link 2
This example demonstrates a more complicated mailto link.
Link Tags
Tag
|
Description
|
Defines an anchor
|
With frames, you can
display more than one Web page in the same browser window.
Examples
Vertical framesetThis example demonstrates how to make a vertical frameset with three different documents.
Horizontal frameset
This example demonstrates how to make a horizontal frameset with three different documents.
(You can find more examples at the bottom of this page)
Frames
With frames, you can
display more than one HTML document in the same browser window. Each HTML
document is called a frame, and each frame is independent of the others.The disadvantages of using frames are:
- The web
developer must keep track of more HTML documents
- It is difficult
to print the entire page
The Frameset Tag
- The
<frameset> tag defines how to divide the window into frames
- Each frameset
defines a set of rows or columns
- The values of
the rows/columns indicate the amount of screen area each row/column will
occupy
The Frame Tag
- The
<frame> tag defines what HTML document to put into each frame
<frameset cols="25%,75%">
<frame src="frame_a.htm">
<frame src="frame_b.htm">
</frameset>
|
Basic Notes - Useful Tips
If a frame has visible
borders, the user can resize it by dragging the border. To prevent a user from
doing this, you can add noresize="noresize" to the <frame> tag.Add the <noframes> tag for browsers that do not support frames.
Important: You cannot use the <body></body> tags together with the <frameset></frameset> tags! However, if you add a <noframes> tag containing some text for browsers that do not support frames, you will have to enclose the text in <body></body> tags! See how it is done in the first example below.
More Examples
How to use the <noframes> tagThis example demonstrates how to use the <noframes> tag.
Mixed frameset
This example demonstrates how to make a frameset with three documents, and how to mix them in rows and columns.
Frameset with noresize="noresize"
This example demonstrates the noresize attribute. The frames are not resizable. Move the mouse over the borders between the frames and notice that you can not move the borders.
Navigation frame
This example demonstrates how to make a navigation frame. The navigation frame contains a list of links with the second frame as the target. The file called "tryhtml_contents.htm" contains three links. The source code of the links:
<a href ="frame_a.htm" target ="showframe">Frame a</a><br>
<a href ="frame_b.htm" target ="showframe">Frame b</a><br>
<a href ="frame_c.htm" target ="showframe">Frame c</a>
The second frame will show the linked document.
Inline frame
This example demonstrates how to create an inline frame (a frame inside an HTML page).
Jump to a specified section within a frame
This example demonstrates two frames. One of the frames has a source to a specified section in a file. The specified section is made with <a name="C10"> in the "link.htm" file.
Jump to a specified section with frame navigation
This example demonstrates two frames. The navigation frame (content.htm) to the left contains a list of links with the second frame (link.htm) as a target. The second frame shows the linked document. One of the links in the navigation frame is linked to a specified section in the target file. The HTML code in the file "content.htm" looks like this: <a href ="link.htm" target ="showframe">Link without Anchor</a><br><a href ="link.htm#C10" target ="showframe">Link with Anchor</a>.
Frame Tags
Tag
|
Description
|
Defines a set of frames
|
|
Defines a sub window (a frame)
|
|
Defines a noframe section for browsers that do not handle frames
|
|
Defines an inline sub window (frame)
|
With HTML you can
create tables.
Examples
TablesThis example demonstrates how to create tables in an HTML document.
Table borders
This example demonstrates different table borders.
(You can find more examples at the bottom of this page)
Tables
Tables are defined with
the <table> tag. A table is divided into rows (with the <tr> tag),
and each row is divided into data cells (with the <td> tag). The letters
td stands for "table data," which is the content of a data cell. A
data cell can contain text, images, lists, paragraphs, forms, horizontal rules,
tables, etc.<table border="1">
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>
|
row 1, cell 1
|
row 1, cell 2
|
row 2, cell 1
|
row 2, cell 2
|
Tables and the Border Attribute
If you do not specify a
border attribute the table will be displayed without any borders. Sometimes
this can be useful, but most of the time, you want the borders to show. To display a table with borders, you will have to use the border attribute:
<table border="1">
<tr>
<td>Row 1, cell 1</td>
<td>Row 1, cell 2</td>
</tr>
</table>
|
Headings in a Table
Headings in a table are
defined with the <th> tag.<table border="1">
<tr>
<th>Heading</th>
<th>Another Heading</th>
</tr>
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>
|
Heading
|
Another Heading
|
row 1, cell 1
|
row 1, cell 2
|
row 2, cell 1
|
row 2, cell 2
|
Empty Cells in a Table
Table cells with no
content are not displayed very well in most browsers.<table border="1">
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td></td>
</tr>
</table>
|
row 1, cell 1
|
row 1, cell 2
|
row 2, cell 1
|
|
To avoid this, add a non-breaking space ( ) to empty data cells, to make the borders visible:
<table border="1">
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td> </td>
</tr>
</table>
|
row 1, cell 1
|
row 1, cell 2
|
row 2, cell 1
|
|
Basic Notes - Useful Tips
The
<thead>,<tbody> and <tfoot> elements are seldom used, because
of bad browser support. Expect this to change in future versions of XHTML. If
you have Internet Explorer 5.0 or newer, you can view a working example in our XML tutorial.
More Examples
Table with no borderThis example demonstrates a table with no borders.
Headings in a table
This example demonstrates how to display table headers.
Empty cells
This example demonstrates how to use " " to handle cells that have no content.
Table with a caption
This example demonstrates a table with a caption.
Table cells that span more than one row/column
This example demonstrates how to define table cells that span more than one row or one column.
Tags inside a table
This example demonstrates how to display elements inside other elements.
Cell padding
This example demonstrates how to use cellpadding to create more white space between the cell content and its borders.
Cell spacing
This example demonstrates how to use cellspacing to increase the distance between the cells.
Add a background color or a background image to a table
This example demonstrates how to add a background to a table.
Add a background color or a background image to a table cell
This example demonstrates how to add a background to one or more table cells.
Align the content in a table cell
This example demonstrates how to use the "align" attribute to align the content of cells, to create a "nice-looking" table.
The frame attribute
This example demonstrates how to use the "frame" attribute to control the borders around the table.
The frame and border attributes
How to use the "frame" and "border" attributes to control the borders around the table.
Table Tags
Tag
|
Description
|
Defines a table
|
|
Defines a table header
|
|
Defines a table row
|
|
Defines a table cell
|
|
Defines a table caption
|
|
Defines groups of table columns
|
|
Defines the attribute values for one or more columns in a table
|
|
Defines a table head
|
|
Defines a table body
|
|
Defines a table footer
|
HTML supports ordered,
unordered and definition lists.
Examples
An unordered listThis example demonstrates an unordered list.
An ordered list
This example demonstrates an ordered list.
(You can find more examples at the bottom of this page)
Unordered Lists
An unordered list is a
list of items. The list items are marked with bullets (typically small black
circles).An unordered list starts with the <ul> tag. Each list item starts with the <li> tag.
<ul>
<li>Coffee</li>
<li>Milk</li>
</ul>
|
- Coffee
- Milk
Ordered Lists
An ordered list is also
a list of items. The list items are marked with numbers.An ordered list starts with the <ol> tag. Each list item starts with the <li> tag.
<ol>
<li>Coffee</li>
<li>Milk</li>
</ol>
|
1.
Coffee
2.
Milk
Inside a list item you
can put paragraphs, line breaks, images, links, other lists, etc.
Definition Lists
A definition list is not
a list of items. This is a list of terms and explanation of the terms.A definition list starts with the <dl> tag. Each definition-list term starts with the <dt> tag. Each definition-list definition starts with the <dd> tag.
<dl>
<dt>Coffee</dt>
<dd>Black hot drink</dd>
<dt>Milk</dt>
<dd>White cold drink</dd>
</dl>
|
Coffee
Black
hot drink
Milk
White
cold drink
Inside a
definition-list definition (the <dd> tag) you can put paragraphs, line
breaks, images, links, other lists, etc.
More Examples
Different types of ordered listsThis example demonstrates different types of ordered lists.
Different types of unordered Lists
This example demonstrates different types of unordered lists.
Nested list
This example demonstrates how you can nest lists.
Nested list 2
This example demonstrates a more complicated nested list.
Definition list
This example demonstrates a definition list.
List Tags
Tag
|
Description
|
Defines an ordered list
|
|
Defines an unordered list
|
|
Defines a list item
|
|
Defines a definition list
|
|
Defines a definition term
|
|
Defines a definition description
|
|
Deprecated. Use <ul> instead
|
|
Deprecated. Use <ul> instead
|
vHTML
Forms are used to select different kinds of user input.
Examples
Text fieldsThis example demonstrates how to create text fields on an HTML page. A user can write text in a text field.
Password fields
This example demonstrates how to create a password field on an HTML page.
(You can find more examples at the bottom of this page)
Forms
A form is an area that
can contain form elements.Form elements are elements that allow the user to enter information (like text fields, textarea fields, drop-down menus, radio buttons, checkboxes, etc.) in a form.
A form is defined with the <form> tag.
<form>
<input>
<input>
</form>
|
Input
The most used form tag
is the <input> tag. The type of input is specified with the type
attribute. The most commonly used input types are explained below.
Text Fields
Text fields are used
when you want the user to type letters, numbers, etc. in a form.<form>
First name:
<input type="text" name="firstname">
<br>
Last name:
<input type="text" name="lastname">
</form>
|
Note that the form itself is not visible. Also note that in most browsers, the width of the text field is 20 characters by default.
Radio Buttons
Radio Buttons are used
when you want the user to select one of a limited number of choices.<form>
<input type="radio" name="sex" value="male"> Male
<br>
<input type="radio" name="sex" value="female"> Female
</form>
|
Note that only one option can be chosen.
Checkboxes
Checkboxes are used
when you want the user to select one or more options of a limited number of
choices.<form>
I have a bike:
<input type="checkbox" name="vehicle" value="Bike">
<br>
I have a car:
<input type="checkbox" name="vehicle" value="Car">
<br>
I have an airplane:
<input type="checkbox" name="vehicle" value="Airplane">
</form>
|
The Form's Action Attribute and
the Submit Button
When the user clicks on
the "Submit" button, the content of the form is sent to another file.
The form's action attribute defines the name of the file to send the content
to. The file defined in the action attribute usually does something with the
received input.<form name="input" action="html_form_action.asp"
method="get">
Username:
<input type="text" name="user">
<input type="submit" value="Submit">
</form>
|
If you type some characters in the text field above, and click the "Submit" button, you will send your input to a page called "html_form_action.asp". That page will show you the received input.
More Examples
CheckboxesThis example demonstrates how to create check-boxes on an HTML page. A user can select or unselect a checkbox.
Radio buttons
This example demonstrates how to create radio-buttons on an HTML page.
Simple drop down box
This example demonstrates how to create a simple drop-down box on an HTML page. A drop-down box is a selectable list.
Another drop down box
This example demonstrates how to create a simple drop-down box with a pre-selected value.
Textarea
This example demonstrates how to create a text-area (a multi-line text input control). A user can write text in the text-area. In a text-area you can write an unlimited number of characters.
Create a button
This example demonstrates how to create a button. On the button you can define your own text.
Fieldset around data
This example demonstrates how to draw a border with a caption around your data.
Form Examples
Form with input fields and a submit buttonThis example demonstrates how to add a form to a page. The form contains two input fields and a submit button.
Form with checkboxes
This form contains three checkboxes, and a submit button.
Form with radio buttons
This form contains two radio buttons, and a submit button.
Send e-mail from a form
This example demonstrates how to send e-mail from a form.
Form Tags
Tag
|
Description
|
Defines a form for user input
|
|
Defines an input field
|
|
Defines a text-area (a multi-line text input control)
|
|
Defines a label to a control
|
|
Defines a fieldset
|
|
Defines a caption for a fieldset
|
|
Defines a selectable list (a drop-down box)
|
|
Defines an option group
|
|
Defines an option in the drop-down box
|
|
Defines a push button
|
|
<isindex>
|
Deprecated. Use <input> instead
|
With HTML you can
display images in a document.
Examples
Insert imagesThis example demonstrates how to display images in your Web page.
Insert images from different locations
This example demonstrates how to display images from another folder or another server in your Web page.
(You can find more examples at the bottom of this page)
The Image Tag and the Src
Attribute
In HTML, images are
defined with the <img> tag. The <img> tag is empty, which means that it contains attributes only and it has no closing tag.
To display an image on a page, you need to use the src attribute. Src stands for "source". The value of the src attribute is the URL of the image you want to display on your page.
The syntax of defining an image:
<img src="url">
|
The browser puts the image where the image tag occurs in the document. If you put an image tag between two paragraphs, the browser shows the first paragraph, then the image, and then the second paragraph.
The Alt Attribute
The alt attribute is
used to define an "alternate text" for an image. The value of the alt
attribute is an author-defined text: <img src="boat.gif" alt="Big Boat">
|
Basic Notes - Useful Tips
If an HTML file
contains ten images - eleven files are required to display the page right.
Loading images take time, so my best advice is: Use images carefully.
More Examples
Background imageThis example demonstrates how to add a background image to an HTML page.
Aligning images
This example demonstrates how to align an image within the text.
Let the image float
This example demonstrates how to let an image float to the left or right of a paragraph.
Adjust images to different sizes
This example demonstrates how to adjust images to different sizes.
Display an alternate text for an image
This example demonstrates how to display an alternate text for an image. The "alt" attribute tells the reader what he or she is missing on a page if the browser can't load images. It is a good practice to include the "alt" attribute for each image on a page.
Make a hyperlink of an image
This example demonstrates how to use an image as a link.
Create an image map
This example demonstrates how to create an image map, with clickable regions. Each of the regions is a hyperlink.
Turn an image into an image map
This example demonstrates how to turn an image into an image map. You will see that if you move the mouse over the image, the coordinates will be displayed on the status bar.
Image Tags
Tag
|
Description
|
Defines an image
|
|
Defines an image map
|
|
Defines a clickable area inside an image map
|
A good background can
make a Web site look really great.
Examples
Good background and text colorAn example of a background color and a text color that makes the text on the page easy to read.
Bad background and text color
An example of a background color and a text color that makes the text on the page difficult to read.
(You can find more examples at the bottom of this page)
Backgrounds
The <body> tag
has two attributes where you can specify backgrounds. The background can be a
color or an image.
Bgcolor
The bgcolor attribute
specifies a background-color for an HTML page. The value of this attribute can
be a hexadecimal number, an RGB value, or a color name:<body bgcolor="#000000">
<body bgcolor="rgb(0,0,0)">
<body bgcolor="black">
|
Background
The background
attribute specifies a background-image for an HTML page. The value of this
attribute is the URL of the image you want to use. If the image is smaller
than the browser window, the image will repeat itself until it fills the entire
browser window.<body background="clouds.gif">
<body background="http://www.w3schools.com/clouds.gif">
|
Note: If you want to use a background image, you should keep in mind:
- Will the
background image increase the loading time too much?
- Will the
background image look good with other images on the page?
- Will the
background image look good with the text colors on the page?
- Will the
background image look good when it is repeated on the page?
- Will the
background image take away the focus from the text?
Basic Notes - Useful Tips
The bgcolor,
background, and the text attributes in the <body> tag are deprecated in
the latest versions of HTML (HTML 4 and XHTML). The World Wide Web Consortium
(W3C) has removed these attributes from its recommendations.Style sheets (CSS) should be used instead (to define the layout and display properties of HTML elements).
More Examples
Good background imageAn example of a background image and a text color that makes the text on the page easy to read.
Good background image 2
An example of a background image and a text color that makes the text on the page easy to read.
Bad background image
An example of a background image and a text color that makes the text on the page very difficult to read.
Computer Joke
Support: "Type dir, space, a,
colon."Customer: "With a space after 'space'?"
Colors are displayed
combining RED, GREEN, and BLUE light sources.
Color Values
HTML colors can be
defined as a hexadecimal notation for the combination of Red, Green, and Blue
color values (RGB).The lowest value that can be given to one light source is 0 (hex #00) and the highest value is 255 (hex #FF).
The table below shows the result of combining Red, Green, and Blue light sources:.
Color
|
Color HEX
|
Color RGB
|
|
#000000
|
rgb(0,0,0)
|
|
#FF0000
|
rgb(255,0,0)
|
|
#00FF00
|
rgb(0,255,0)
|
|
#0000FF
|
rgb(0,0,255)
|
|
#FFFF00
|
rgb(255,255,0)
|
|
#00FFFF
|
rgb(0,255,255)
|
|
#FF00FF
|
rgb(255,0,255)
|
|
#C0C0C0
|
rgb(192,192,192)
|
|
#FFFFFF
|
rgb(255,255,255)
|
W3C Standard Color Names
W3C has listed 16 color
names that will validate with an HTML validator.The color names are: aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, purple, red, silver, teal, white, and yellow.
Cross-browser Color Names
A collection of nearly
150 color names are supported by all major browsers.View the cross-browser color names
Cross-browser Color Values
Some years ago, when
most computers only supported 256 different colors, a list of 216 Web Safe
Colors was suggested as a Web standard. The reason for this was that the
Microsoft and Mac operating system used 40 different "reserved" fixed
system colors (about 20 each). We are not sure how important this is now, since most computers today have the ability to display millions of different colors, but the choice is left to you.
The 216 cross-browser color palette was created to ensure that all computers would display the colors correctly when running a 256 color palette:
000000
|
000033
|
000066
|
000099
|
0000CC
|
0000FF
|
003300
|
003333
|
003366
|
003399
|
0033CC
|
0033FF
|
006600
|
006633
|
006666
|
006699
|
0066CC
|
0066FF
|
009900
|
009933
|
009966
|
009999
|
0099CC
|
0099FF
|
00CC00
|
00CC33
|
00CC66
|
00CC99
|
00CCCC
|
00CCFF
|
00FF00
|
00FF33
|
00FF66
|
00FF99
|
00FFCC
|
00FFFF
|
330000
|
330033
|
330066
|
330099
|
3300CC
|
3300FF
|
333300
|
333333
|
333366
|
333399
|
3333CC
|
3333FF
|
336600
|
336633
|
336666
|
336699
|
3366CC
|
3366FF
|
339900
|
339933
|
339966
|
339999
|
3399CC
|
3399FF
|
33CC00
|
33CC33
|
33CC66
|
33CC99
|
33CCCC
|
33CCFF
|
33FF00
|
33FF33
|
33FF66
|
33FF99
|
33FFCC
|
33FFFF
|
660000
|
660033
|
660066
|
660099
|
6600CC
|
6600FF
|
663300
|
663333
|
663366
|
663399
|
6633CC
|
6633FF
|
666600
|
666633
|
666666
|
666699
|
6666CC
|
6666FF
|
669900
|
669933
|
669966
|
669999
|
6699CC
|
6699FF
|
66CC00
|
66CC33
|
66CC66
|
66CC99
|
66CCCC
|
66CCFF
|
66FF00
|
66FF33
|
66FF66
|
66FF99
|
66FFCC
|
66FFFF
|
990000
|
990033
|
990066
|
990099
|
9900CC
|
9900FF
|
993300
|
993333
|
993366
|
993399
|
9933CC
|
9933FF
|
996600
|
996633
|
996666
|
996699
|
9966CC
|
9966FF
|
999900
|
999933
|
999966
|
999999
|
9999CC
|
9999FF
|
99CC00
|
99CC33
|
99CC66
|
99CC99
|
99CCCC
|
99CCFF
|
99FF00
|
99FF33
|
99FF66
|
99FF99
|
99FFCC
|
99FFFF
|
CC0000
|
CC0033
|
CC0066
|
CC0099
|
CC00CC
|
CC00FF
|
CC3300
|
CC3333
|
CC3366
|
CC3399
|
CC33CC
|
CC33FF
|
CC6600
|
CC6633
|
CC6666
|
CC6699
|
CC66CC
|
CC66FF
|
CC9900
|
CC9933
|
CC9966
|
CC9999
|
CC99CC
|
CC99FF
|
CCCC00
|
CCCC33
|
CCCC66
|
CCCC99
|
CCCCCC
|
CCCCFF
|
CCFF00
|
CCFF33
|
CCFF66
|
CCFF99
|
CCFFCC
|
CCFFFF
|
FF0000
|
FF0033
|
FF0066
|
FF0099
|
FF00CC
|
FF00FF
|
FF3300
|
FF3333
|
FF3366
|
FF3399
|
FF33CC
|
FF33FF
|
FF6600
|
FF6633
|
FF6666
|
FF6699
|
FF66CC
|
FF66FF
|
FF9900
|
FF9933
|
FF9966
|
FF9999
|
FF99CC
|
FF99FF
|
FFCC00
|
FFCC33
|
FFCC66
|
FFCC99
|
FFCCCC
|
FFCCFF
|
FFFF00
|
FFFF33
|
FFFF66
|
FFFF99
|
FFFFCC
|
FFFFFF
|
Colors are displayed
combining RED, GREEN, and BLUE light sources.
Color Values
HTML colors are defined
using a hexadecimal notation for the combination of Red, Green, and Blue color
values (RGB). The lowest value that can be given to one of the light sources is
0 (hex #00). The highest value is 255 (hex #FF).
Turn Off the Red
If you turn off the Red
light completely, there are 65536 different combination of Green and Blue (256
x 256) to experiment with.Click here to see some of these combinations of Green and Blue.
Turn On the Red
By setting the Red
parameter to its maximum value, there are still 65536 different combination of
Green and Blue (256 x 256) to experiment with.Click here to see some of these combinations of Green and Blue.
16 Million Different Colors
The combination of Red,
Green and Blue values from 0 to 255 gives a total of more than 16 million
different colors to play with (256 x 256 x 256).Most modern monitors are capable of displaying at least 16384 different colors.
If you look at the color table below, you will see the result of varying the red light from 0 to 255, while keeping the green and blue light at zero.
To see a full list of 16384 different colors based on red light varying from 0 to 255, click on one of the hexadecimal or rgb values below.
Red Light
|
HEX
|
RGB
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Shades of Gray
Gray colors are
displayed using an equal amount of power to all of the light sources. To make
it easier for you to select the right gray color we have compiled a table of
gray shades for you:
|
RGB(0,0,0)
|
#000000
|
|
RGB(8,8,8)
|
#080808
|
|
RGB(16,16,16)
|
#101010
|
|
RGB(24,24,24)
|
#181818
|
|
RGB(32,32,32)
|
#202020
|
|
RGB(40,40,40)
|
#282828
|
|
RGB(48,48,48)
|
#303030
|
|
RGB(56,56,56)
|
#383838
|
|
RGB(64,64,64)
|
#404040
|
|
RGB(72,72,72)
|
#484848
|
|
RGB(80,80,80)
|
#505050
|
|
RGB(88,88,88)
|
#585858
|
|
RGB(96,96,96)
|
#606060
|
|
RGB(104,104,104)
|
#686868
|
|
RGB(112,112,112)
|
#707070
|
|
RGB(120,120,120)
|
#787878
|
|
RGB(128,128,128)
|
#808080
|
|
RGB(136,136,136)
|
#888888
|
|
RGB(144,144,144)
|
#909090
|
|
RGB(152,152,152)
|
#989898
|
|
RGB(160,160,160)
|
#A0A0A0
|
|
RGB(168,168,168)
|
#A8A8A8
|
|
RGB(176,176,176)
|
#B0B0B0
|
|
RGB(184,184,184)
|
#B8B8B8
|
|
RGB(192,192,192)
|
#C0C0C0
|
|
RGB(200,200,200)
|
#C8C8C8
|
|
RGB(208,208,208)
|
#D0D0D0
|
|
RGB(216,216,216)
|
#D8D8D8
|
|
RGB(224,224,224)
|
#E0E0E0
|
|
RGB(232,232,232)
|
#E8E8E8
|
|
RGB(240,240,240)
|
#F0F0F0
|
|
RGB(248,248,248)
|
#F8F8F8
|
|
RGB(255,255,255)
|
#FFFFFF
|
HTML Color Names
The table below
provides a list of the color names that are supported by all major browsers.Note: If you want your pages to validate with an HTML or a CSS validator, W3C has listed 16 color names that you can use: aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, purple, red, silver, teal, white, and yellow. If you want to use other colors, you must specify their RGB or HEX value.
Click on a color name (or a hex value) to view the color as the background-color along with different text colors:
Color Name
|
Color HEX
|
Color
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
HTML Quick List from
W3Schools. Print it, fold it, and put it in your pocket.
HTML Basic Document
<html><head>
<title>Document name goes here</title>
</head>
<body>
Visible text goes here
</body>
</html>Visible text goes here
</body>
Heading Elements
<h1>Largest Heading</h1>
<h2> . . .
</h2><h3> . . . </h3>
<h4> . . . </h4>
<h5> . . . </h5>
<h6>Smallest Heading</h6>
Text Elements
<p>This is a paragraph</p>
<br> (line break)
<hr> (horizontal rule)
<pre>This text is preformatted</pre>
<br> (line break)
<hr> (horizontal rule)
<pre>This text is preformatted</pre>
Logical Styles
<em>This text is emphasized</em>
<strong>This text is strong</strong>
<code>This is some computer code</code>
<strong>This text is strong</strong>
<code>This is some computer code</code>
Physical Styles
<b>This text is bold</b>
<i>This text is italic</i>
<i>This text is italic</i>
Links, Anchors, and Image Elements
<a href="http://www.example.com/">This is a
Link</a>
<a href="http://www.example.com/"><img src="URL" alt="Alternate Text"></a>
<a href="mailto:webmaster@example.com">Send e-mail</a>
A named anchor:<a href="http://www.example.com/"><img src="URL" alt="Alternate Text"></a>
<a href="mailto:webmaster@example.com">Send e-mail</a>
<a name="tips">Useful Tips Section</a>
<a href="#tips">Jump to the Useful Tips Section</a>
Unordered list
<ul>
<li>First item</li>
<li>Next item</li>
</ul>
<li>First item</li>
<li>Next item</li>
</ul>
Ordered list
<ol>
<li>First item</li>
<li>Next item</li>
</ol>
<li>First item</li>
<li>Next item</li>
</ol>
Definition list
<dl>
<dt>First term</dt>
<dd>Definition</dd>
<dt>Next term</dt>
<dd>Definition</dd>
</dl>
<dt>First term</dt>
<dd>Definition</dd>
<dt>Next term</dt>
<dd>Definition</dd>
</dl>
Tables
<table
border="1"><tr>
<th>someheader</th>
<th>someheader</th>
</tr>
<tr>
<td>sometext</td>
<td>sometext</td>
</tr>
</table>
Frames
<frameset
cols="25%,75%"><frame src="page1.htm">
<frame src="page2.htm">
</frameset>
Forms
<form action="http://www.example.com/test.asp"
method="post/get">
<input
type="text" name="lastname" value="Nixon"
size="30" maxlength="50"><input type="password">
<input type="checkbox" checked="checked">
<input type="radio" checked="checked">
<input type="submit">
<input type="reset">
<input type="hidden">
<select>
<option>Apples
<option selected>Bananas
<option>Cherries
</select>
<textarea name="Comment" rows="60" cols="20"></textarea>
</form>
Entities
< is the same as <
> is the same as >
© is the same as ©
> is the same as >
© is the same as ©
Other Elements
<!-- This is a
comment --><blockquote>
Text quoted from some source.
</blockquote>
<address>
Address 1<br>
Address 2<br>
City<br>
</address>
Source : http://www.w3schools.com/html/html_quick.asp
Everywhere on the Web
you will find pages that are formatted like newspaper pages using HTML columns.
HTML Layout - Using Tables
One very common practice with HTML, is to use HTML tables to
format the layout of an HTML page.
A part of this page
is formatted with two columns, like a newspaper page.As you can see on this page, there is a left column and a right column. This text is displayed in the left column. |
An HTML <table> is used to divide a part of this Web page
into two columns.
The trick is to use a
table without borders, and maybe a little extra cell-padding.No matter how much text you add to this page, it will stay inside its column borders. |
Same Layout - Color Added
One very common practice with HTML, is to use HTML tables to
format the layout of an HTML page.
A part of this page
is formatted with two columns, like a newspaper page.As you can see at this page, there is a left column and a right column. |
An HTML <table> is used to divide a part of this Web page
into two columns.
This text is
displayed in the right column.The trick is to use a table without borders, and maybe a little extra cell-padding. No matter how much text you add to this page, it will stay inside its column borders. |
Examples
Dividing a part of an
HTML page into table columns is very easy to do. To let you experiment with it,
we have put together this simple example.
HTML Joke
Student: "How do you spell
HTML?"
The <font> tag in
HTML is deprecated. It is supposed to be removed in a future version of HTML.
Even if a lot of people
are using it, you should try to avoid it, and use styles instead.
The HTML <font> Tag
With HTML code like
this, you can specify both the size and the type of the browser output :<p>
<font size="2" face="Verdana">
This is a paragraph.
</font>
</p>
<p>
<font size="3" face="Times">
This is another paragraph.
</font>
</p>
|
Font Attributes
Attribute
|
Example
|
Purpose
|
size="number"
|
size="2"
|
Defines the font size
|
size="+number"
|
size="+1"
|
Increases the font size
|
size="-number"
|
size="-1"
|
Decreases the font size
|
face="face-name"
|
face="Times"
|
Defines the font-name
|
color="color-value"
|
color="#eeff00"
|
Defines the font color
|
color="color-name"
|
color="red"
|
Defines the font color
|
The <font> Tag Should NOT
be Used
The <font> tag is
deprecated in the latest versions of HTML (HTML 4 and XHTML).The World Wide Web Consortium (W3C) has removed the <font> tag from its recommendations. In future versions of HTML, style sheets (CSS) will be used to define the layout and display properties of HTML elements.
The Right Way to Do It - With
Styles
Set the font of textThis example demonstrates how to set the font of a text.
Set the font size of text
This example demonstrates how to set the font size of a text.
Set the font color of text
This example demonstrates how to set the color of a text.
Set the font, font size, and font color of text
This example demonstrates how to set the font, font size, and font color of a text.
Where to Learn More About Style
Sheets?
First off: Finish the last chapters in our
HTML tutorial !!! In the following chapters we will explain why some tags, like
<font>, are to be removed from the HTML recommendations, and how to
insert a style sheet in an HTML document.To learn more about style sheets: Study our CSS Tutorial.
HTML 3.2 Was Very Wrong !
The original HTML was never
intended to contain tags for formatting a document. HTML tags were
intended to define the content of the document like:<p>This is a paragraph</p>
<h1>This is a heading</h1>
When tags like <font> and color attributes were added to the HTML 3.2 specification, it started a nightmare for web developers. Development of large web sites where fonts and color information had to be added to every single Web page, became a long, expensive and unduly painful process.
What is so Great About HTML 4.0 ?
In HTML 4.0 all
formatting can be removed from the HTML document and stored in a separate
style sheet.Because HTML 4.0 separates the presentation from the document structure, we have what we always needed: Total control of presentation layout without messing up the document content.
What Should You do About it ?
Do not use presentation
attributes inside your HTML tags if you can avoid it. Start using styles!
Please read our CSS tutorial to learn about style sheets.Do not use deprecated tags. Visit our complete HTML 4.01 Reference to see which tags and attributes that are deprecated.
Prepare Yourself for XHTML
XHTML is the
"new" HTML. The most important thing you can do is to start writing
valid HTML 4.01. Also start writing your tags in lower case. Always close your
tag elements. Never end a paragraph without </p>.NOTE: The official HTML 4.01 recommends the use of lower case tags.
If you want to read about how this web site was converted to XHTML, please visit our XHTML tutorial.
Validate Your HTML Files as HTML
4.01
An HTML document is
validated against a Document Type Definition (DTD). Before an HTML file can be
properly validated, a correct DTD must be added as the first line of the file.The HTML 4.01 Strict DTD includes elements and attributes that have not been deprecated or do not appear in framesets:
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
|
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
|
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
|
Test Your HTML With the W3C
Validator
With HTML 4.0 all
formatting can be moved out of the HTML document and into a separate style
sheet.
Examples
Styles in HTMLThis example demonstrates how to format an HTML document with style information added to the <head> section.
Link that is not underlined
This example demonstrates how to make a link that is not underlined, using a style attribute.
Link to an external style sheet
This example demonstrates how to use the <link> tag to link to an external style sheet.
How to Use Styles
When a browser reads a
style sheet, it will format the document according to it. There are three ways
of inserting a style sheet:
External Style Sheet
An external style sheet
is ideal when the style is applied to many pages. With an external style sheet,
you can change the look of an entire Web site by changing one file. Each page
must link to the style sheet using the <link> tag. The <link> tag
goes inside the head section.<head>
<link rel="stylesheet" type="text/css"
href="mystyle.css">
</head>
|
Internal Style Sheet
An internal style sheet
should be used when a single document has a unique style. You define internal
styles in the head section with the <style> tag.<head>
<style type="text/css">
body {background-color: red}
p {margin-left: 20px}
</style>
</head>
|
Inline Styles
An inline style should
be used when a unique style is to be applied to a single occurrence of an
element.To use inline styles you use the style attribute in the relevant tag. The style attribute can contain any CSS property. The example shows how to change the color and the left margin of a paragraph:
<p style="color: red; margin-left: 20px">
This is a paragraph
</p>
|
Style Tags
Tag
|
Description
|
Defines a style definition
|
|
Defines a resource reference
|
|
Defines a section in a document
|
|
Defines a section in a document
|
|
Deprecated. Use styles instead
|
|
Deprecated. Use styles instead
|
|
Deprecated. Use styles instead
|
Joke
Customer: Hello, it's me!Support: It's me too!
Customer: No, Esmie. E, s, m, i, e!
Support: Sorry!
Examples
The title of a documentThe title information inside a head element is not displayed in the browser window.
One target for all links
This example demonstrates how to use the base tag to let all the links on a page open in a new window.
The Head Element
The head element
contains general information, also called meta-information, about a document.
Meta means "information about". You can say that meta-data means information about data, or meta-information means information about information.
Information Inside the Head
Element
The elements inside the
head element should not be displayed by a browser. According to the HTML standard, only a few tags are legal inside the head section. These are: <base>, <link>, <meta>, <title>, <style>, and <script>.
Look at the following illegal construct:
<head>
<p>This is some text</p>
</head>
|
- Display the
text because it is inside a paragraph element
- Hide the text
because it is inside a head element
Should browsers forgive you for errors like this? We don't think so. Others do.
Head Tags
Tag
|
Description
|
Defines information about the document
|
|
Defines the document title
|
|
Defines a base URL for all the links on a page
|
|
Defines a resource reference
|
|
Defines meta information
|
Tag
|
Description
|
Defines the document type. This tag goes before the <html>
start tag.
|
The Meta Element
As we explained in the previous
chapter, the head element contains general information (meta-information) about
a document. HTML also includes a meta element that goes inside the head element. The purpose of the meta element is to provide meta-information about the document.
Most often the meta element is used to provide information that is relevant to browsers or search engines like describing the content of your document.
Note: W3C states that "Some user agents support the use of META to refresh the current page after a specified number of seconds, with the option of replacing it by a different URI. Authors should not use this technique to forward users to different pages, as this makes the page inaccessible to some users. Instead, automatic page forwarding should be done using server-side redirects" at http://www.w3.org/TR/html4/struct/global.html#adef-http-equiv.
Keywords for Search Engines
Some search engines on
the WWW will use the name and content attributes of the meta tag to index your
pages.
This meta element defines a description
of your page:
<meta
name="description" content="Free Web tutorials on HTML, CSS,
XML, and XHTML"> |
This meta element defines keywords for
your page:
<meta
name="keywords" content="HTML, DHTML, CSS, XML, XHTML,
JavaScript, VBScript"> |
However, since too many webmasters have used meta tags for spamming, like repeating keywords to give pages a higher ranking, some search engines have stopped using them entirely.
You can read more about search engines in our Web Building Tutorial.
Unknown Meta Attributes
Sometimes you will see
meta attributes that are unknown to you like this:
<meta name="security" content="low">
|
You can see a complete list of the meta element attributes in our
Complete HTML 4.01 Tag Reference.
HTML Links
When you click on a
link in an HTML document like this: Last Page,
an underlying <a> tag points to a place (an address) on the Web with an
href attribute value like this: <a href="lastpage.htm">Last
Page</a>.The Last Page link in the example is a link that is relative to the Web site that you are browsing, and your browser will construct a full Web address like http://www.w3schools.com/html/lastpage.htm to access the page.
Uniform Resource Locators
Something called a
Uniform Resource Locator (URL) is used to address a document (or other data) on
the World Wide Web. A full Web address like this: http://www.w3schools.com/html/lastpage.htm
follows these syntax rules:scheme://host.domain:port/path/filename
The scheme is defining the type of Internet service.
The most common type is http.
The domain is
defining the Internet domain name like w3schools.com.The host is defining the domain host. If omitted, the default host for http is www.
The :port is defining the port number at the host. The port number is normally omitted. The default port number for http is 80.
The path is defining a path (a sub directory) at the server. If the path is omitted, the resource (the document) must be located at the root directory of the Web site.
The filename is defining the name of a document. The default filename might be default.asp, or index.html or something else depending on the settings of the Web server.
URL Schemes
Some examples of the
most common schemes can be found below:
Schemes
|
Access
|
file
|
a file on your local PC
|
ftp
|
a file on an FTP server
|
http
|
a file on a World Wide Web Server
|
gopher
|
a file on a Gopher server
|
news
|
a Usenet newsgroup
|
telnet
|
a Telnet connection
|
WAIS
|
a file on a WAIS server
|
Accessing a Newsgroup
The following HTML
code:<a href="news:alt.html">HTML Newsgroup</a>
creates a link to a newsgroup like this HTML Newsgroup.
Downloading with FTP
The following HTML
code:<a href="ftp://www.w3schools.com/ftp/winzip.exe">Download WinZip</a>
creates a link to download a file like this: Download WinZip.
(The link doesn't work. Don't try it. It is just an example. W3Schools doesn't really have an ftp directory.)
Link to your Mail system
The following HTML
code:<a href="mailto:someone@w3schools.com">someone@w3schools.com</a>
creates a link to your own mail system like this:
someone@w3schools.com
Add scripts to HTML
pages to make them more dynamic and interactive.
Examples
Insert a scriptThis example demonstrates how to insert a script into your HTML document.
Work with browsers that do not support scripts
This example demonstrates how to handle browsers that do not support scripting.
Insert a Script into HTML Page
A script in HTML is
defined with the <script> tag. Note that you will have to use the type
attribute to specify the scripting language.<html>
<head>
</head>
<body>
<script type="text/javascript">
document.write("Hello World!")
</script>
</body>
</html>
|
Hello World!
Note: To learn more about scripting in HTML, visit our JavaScript School.
How to Handle Older Browsers
A browser that does not
recognize the <script> tag at all, will display the <script> tag's
content as text on the page. To prevent the browser from doing this, you should
hide the script in comment tags. An old browser (that does not recognize the
<script> tag) will ignore the comment and it will not write the tag's
content on the page, while a new browser will understand that the script should
be executed, even if it is surrounded by comment tags.
Example
JavaScript:
VBScript:<script type="text/javascript"> <!-- document.write("Hello World!") //--> </script> <script type="text/vbscript"> <!-- document.write("Hello World!") '--> </script> |
The <noscript> Tag
In addition to hiding
the script inside a comment, you can also add a <noscript> tag.The <noscript> tag is used to define an alternate text if a script is NOT executed. This tag is used for browsers that recognize the <script> tag, but do not support the script inside, so these browsers will display the text inside the <noscript> tag instead. However, if a browser supports the script inside the <script> tag it will ignore the <noscript> tag.
Example
JavaScript:
VBScript:<script type="text/javascript"> <!-- document.write("Hello World!") //--> </script> <noscript>Your browser does not support JavaScript!</noscript> <script type="text/vbscript"> <!-- document.write("Hello World!") '--> </script> <noscript>Your browser does not support VBScript!</noscript> |
Script Tags
Tag
|
Description
|
Defines a script
|
|
Defines an alternate text if the script is not executed
|
|
Defines an embedded object
|
|
Defines run-time settings (parameters) for an object
|
|
Deprecated. Use <object> instead
|
Core Attributes
Not valid in base,
head, html, meta, param, script, style, and title elements.
Attribute
|
Value
|
Description
|
class
|
class_rule or
style_rule
|
The class of the element
|
id
|
id_name
|
A unique id for the element
|
style
|
style_definition
|
An inline style definition
|
title
|
tooltip_text
|
A text to display in a tool tip
|
Language Attributes
Not valid in base, br,
frame, frameset, hr, iframe, param, and script elements.
Attribute
|
Value
|
Description
|
dir
|
ltr | rtl
|
Sets the text direction
|
lang
|
language_code
|
Sets the language code
|
Keyboard Attributes
Attribute
|
Value
|
Description
|
accesskey
|
character
|
Sets a keyboard shortcut to access an element
|
tabindex
|
number
|
Sets the tab order of an element
|
Core Attributes
Not valid in base,
head, html, meta, param, script, style, and title elements.
Attribute
|
Value
|
Description
|
class
|
class_rule or
style_rule
|
The class of the element
|
id
|
id_name
|
A unique id for the element
|
style
|
style_definition
|
An inline style definition
|
title
|
tooltip_text
|
A text to display in a tool tip
|
Language Attributes
Not valid in base, br,
frame, frameset, hr, iframe, param, and script elements.
Attribute
|
Value
|
Description
|
dir
|
ltr | rtl
|
Sets the text direction
|
lang
|
language_code
|
Sets the language code
|
Keyboard Attributes
Attribute
|
Value
|
Description
|
accesskey
|
character
|
Sets a keyboard shortcut to access an element
|
tabindex
|
number
|
Sets the tab order of an element
|
Below is a reference of
ASCII characters in URL-encoding form (hexadecimal format).
Hexadecimal values can
be used to display non-standard letters and characters in browsers and
plug-ins.
Try It
Type some text or an
ASCII value in the input field below, and click on the "URL Encode"
button to see the URL-encoding.
URL-encoding from %00 to %8f
ASCII Value
|
URL-encode
|
ASCII Value
|
URL-encode
|
ASCII Value
|
URL-encode
|
æ
|
%00
|
0
|
%30
|
`
|
%60
|
|
%01
|
1
|
%31
|
a
|
%61
|
|
%02
|
2
|
%32
|
b
|
%62
|
|
%03
|
3
|
%33
|
c
|
%63
|
|
%04
|
4
|
%34
|
d
|
%64
|
|
%05
|
5
|
%35
|
e
|
%65
|
|
%06
|
6
|
%36
|
f
|
%66
|
|
%07
|
7
|
%37
|
g
|
%67
|
backspace
|
%08
|
8
|
%38
|
h
|
%68
|
tab
|
%09
|
9
|
%39
|
i
|
%69
|
linefeed
|
%0a
|
:
|
%3a
|
j
|
%6a
|
|
%0b
|
;
|
%3b
|
k
|
%6b
|
|
%0c
|
<
|
%3c
|
l
|
%6c
|
c return
|
%0d
|
=
|
%3d
|
m
|
%6d
|
|
%0e
|
>
|
%3e
|
n
|
%6e
|
|
%0f
|
?
|
%3f
|
o
|
%6f
|
|
%10
|
@
|
%40
|
p
|
%70
|
|
%11
|
A
|
%41
|
q
|
%71
|
|
%12
|
B
|
%42
|
r
|
%72
|
|
%13
|
C
|
%43
|
s
|
%73
|
|
%14
|
D
|
%44
|
t
|
%74
|
|
%15
|
E
|
%45
|
u
|
%75
|
|
%16
|
F
|
%46
|
v
|
%76
|
|
%17
|
G
|
%47
|
w
|
%77
|
|
%18
|
H
|
%48
|
x
|
%78
|
|
%19
|
I
|
%49
|
y
|
%79
|
|
%1a
|
J
|
%4a
|
z
|
%7a
|
|
%1b
|
K
|
%4b
|
{
|
%7b
|
|
%1c
|
L
|
%4c
|
|
|
%7c
|
|
%1d
|
M
|
%4d
|
}
|
%7d
|
|
%1e
|
N
|
%4e
|
~
|
%7e
|
|
%1f
|
O
|
%4f
|
|
%7f
|
space
|
%20
|
P
|
%50
|
€
|
%80
|
!
|
%21
|
Q
|
%51
|
|
%81
|
"
|
%22
|
R
|
%52
|
‚
|
%82
|
#
|
%23
|
S
|
%53
|
ƒ
|
%83
|
$
|
%24
|
T
|
%54
|
„
|
%84
|
%
|
%25
|
U
|
%55
|
…
|
%85
|
&
|
%26
|
V
|
%56
|
†
|
%86
|
'
|
%27
|
W
|
%57
|
‡
|
%87
|
(
|
%28
|
X
|
%58
|
ˆ
|
%88
|
)
|
%29
|
Y
|
%59
|
‰
|
%89
|
*
|
%2a
|
Z
|
%5a
|
Š
|
%8a
|
+
|
%2b
|
[
|
%5b
|
‹
|
%8b
|
,
|
%2c
|
\
|
%5c
|
Œ
|
%8c
|
-
|
%2d
|
]
|
%5d
|
|
%8d
|
.
|
%2e
|
^
|
%5e
|
Ž
|
%8e
|
/
|
%2f
|
_
|
%5f
|
|
%8f
|
URL-encoding from %90 to %ff
ASCII Value
|
URL-encode
|
ASCII Value
|
URL-encode
|
ASCII Value
|
URL-encode
|
|
%90
|
À
|
%c0
|
ð
|
%f0
|
‘
|
%91
|
Á
|
%c1
|
ñ
|
%f1
|
’
|
%92
|
Â
|
%c2
|
ò
|
%f2
|
“
|
%93
|
Ã
|
%c3
|
ó
|
%f3
|
”
|
%94
|
Ä
|
%c4
|
ô
|
%f4
|
•
|
%95
|
Å
|
%c5
|
õ
|
%f5
|
–
|
%96
|
Æ
|
%c6
|
ö
|
%f6
|
—
|
%97
|
Ç
|
%c7
|
÷
|
%f7
|
˜
|
%98
|
È
|
%c8
|
ø
|
%f8
|
™
|
%99
|
É
|
%c9
|
ù
|
%f9
|
š
|
%9a
|
Ê
|
%ca
|
ú
|
%fa
|
›
|
%9b
|
Ë
|
%cb
|
û
|
%fb
|
œ
|
%9c
|
Ì
|
%cc
|
ü
|
%fc
|
|
%9d
|
Í
|
%cd
|
ý
|
%fd
|
ž
|
%9e
|
Î
|
%ce
|
þ
|
%fe
|
Ÿ
|
%9f
|
Ï
|
%cf
|
ÿ
|
%ff
|
|
%a0
|
Ð
|
%d0
|
|
|
¡
|
%a1
|
Ñ
|
%d1
|
|
|
¢
|
%a2
|
Ò
|
%d2
|
|
|
£
|
%a3
|
Ó
|
%d3
|
|
|
|
%a4
|
Ô
|
%d4
|
|
|
¥
|
%a5
|
Õ
|
%d5
|
|
|
|
|
%a6
|
Ö
|
%d6
|
|
|
§
|
%a7
|
|
%d7
|
|
|
¨
|
%a8
|
Ø
|
%d8
|
|
|
©
|
%a9
|
Ù
|
%d9
|
|
|
ª
|
%aa
|
Ú
|
%da
|
|
|
«
|
%ab
|
Û
|
%db
|
|
|
¬
|
%ac
|
Ü
|
%dc
|
|
|
¯
|
%ad
|
Ý
|
%dd
|
|
|
®
|
%ae
|
Þ
|
%de
|
|
|
¯
|
%af
|
ß
|
%df
|
|
|
°
|
%b0
|
à
|
%e0
|
|
|
±
|
%b1
|
á
|
%e1
|
|
|
²
|
%b2
|
â
|
%e2
|
|
|
³
|
%b3
|
ã
|
%e3
|
|
|
´
|
%b4
|
ä
|
%e4
|
|
|
µ
|
%b5
|
å
|
%e5
|
|
|
¶
|
%b6
|
æ
|
%e6
|
|
|
·
|
%b7
|
ç
|
%e7
|
|
|
¸
|
%b8
|
è
|
%e8
|
|
|
¹
|
%b9
|
é
|
%e9
|
|
|
º
|
%ba
|
ê
|
%ea
|
|
|
»
|
%bb
|
ë
|
%eb
|
|
|
¼
|
%bc
|
ì
|
%ec
|
|
|
½
|
%bd
|
í
|
%ed
|
|
|
¾
|
%be
|
î
|
%ee
|
|
|
¿
|
%bf
|
ï
|
%ef
|
|
|
Your First Step: A Personal Web
Server
- If you want
other people to view your pages, you must publish them.
- To publish your
work, you have to copy your files to a web server.
- Your own PC can
act as a web server if it is connected to a network.
- If you are
running Windows 98, you can use the PWS (Personal Web Server).
- PWS is hiding
in the PWS folder in your Windows CD.
Personal Web Server (PWS)
PWS turns any Windows
computer into a Web server. PWS is easy to install and ideal for developing and
testing Web applications. PWS has been optimized for workstation use, but has
all the requirements of a full Web server. It also runs Active Server Pages
(ASP) just like its larger brother IIS.
How to Install a Personal Web
Server (PWS):
- Browse your
Windows installation to see if you have installed PWS.
- If not, install
PWS from the PWS directory on your Windows CD.
- Follow the
instructions and get your Personal Web Server up and running.
Note: Microsoft Windows XP Home Edition does not come with the option to turn your computer into a PWS!
Internet Information Server (IIS)
Windows 2000's built-in
Web server IIS, makes it easy to build large applications for the Web. Both PWS
and IIS include ASP, a server-side scripting standard that can be used to
create dynamic and interactive Web applications. IIS is also available for
Windows NT. If you want to read more about ASP, you should study our ASP School.
Read more about Microsoft's Internet Information Services.
Your Next Step: A Professional
Web Server
- If you do not
want to use PWS or IIS, you must upload your files to a public server.
- Most Internet
Service Providers (ISP's) will offer to host your web pages.
- If your
employer has an Internet Server, you can ask him to host your Web site.
- If you are
really serious about this, you should install your own Internet Server.
HTML Summary
This tutorial has
taught you how to use HTML to create your own web site.HTML is the universal markup language for the Web. HTML lets you format text, add graphics, create links, input forms, frames and tables, etc., and save it all in a text file that any browser can read and display.
The key to HTML is the tags, which indicates what content is coming up.
For more information on HTML, please take a look at our HTML examples and our HTML reference.
Now You Know HTML, What's Next?
The next step is to
learn XHTML and CSS.XHTML
XHTML is the "new" HTML. The latest HTML recommendation is HTML 4.01. This is the last and final HTML version.
HTML will be replaced by XHTML, which is a stricter and cleaner version of HTML.
If you want to learn more about XHTML, please visit our XHTML tutorial.
CSS
CSS is used to control the style and layout of multiple Web pages all at once.
With CSS, all formatting can be removed from the HTML document and stored in a separate file.
CSS gives you total control of the layout, without messing up the document content.
To learn how to create style sheets, please visit our CSS tutorial.
|
|
Get Your Diploma!
W3Schools' Online
Certification Program is the perfect solution for busy professionals who need
to balance work, family, and career building.The HTML Certificate is for developers who want to document their knowledge of HTML, XHTML, and CSS. The ASP Certificate is for developers who want to document their knowledge of ASP, SQL, and ADO. |