Académique Documents
Professionnel Documents
Culture Documents
People often think it is extremely difficult to make a website. That is not the case!
Everyone can learn how to make a website. And if you read on, you will have made one in just
one hour.
Others believe - just as mistakenly - that expensive and advanced software is needed to make
websites. It is true that there are lots of different programs that claim they can create a website
for you. Some come closer than others. But if you want it done right, you must do it yourself.
Fortunately, it is simple and free and you already have all the software you need.
The aim of this tutorial is to give you an easy, yet thorough and correct introduction to how to
make websites. The tutorial starts from scratch and requires absolutely no prior knowledge
of programming.
The tutorial cannot show you everything. So some engagement and a will to experiment are
required. But don't worry - learning how to make websites is a lot of fun and gives a tremendous
amount of satisfaction when you get it right.
How you choose to use the tutorial is up to you. But we suggest you read only two or three
lessons a day and take time to experiment with the new things you learn in each lesson.
What is needed?
You have a "browser". A browser is the program that makes it possible to browse and open
websites. Right now you are looking at this page in your browser.
It is not important which browser you use. The most common is Microsoft Internet Explorer. But
there are others such as Opera and Mozilla Firefox and they can all be used.
You might have heard about, or even used, programs such as Microsoft FrontPage, Macromedia
Dreamweaver or even Microsoft Word, which can - or claim that they can - create websites for
you. Forget these programs for now! They are not of any help to you when learning how to code
your own website.
Instead, you need a simple text editor. If you are using Windows you can use Notepad, which is
usually found in the start menu under Programs in Accessories:
If you are not using Windows, you can use a similar simple text editor. For example, Pico
(Linux) or TextEdit (Mac).
Notepad is a very basic text editing program which is excellent for coding because it does not
interfere with what you are typing. It gives you complete control. The problem with many of the
programs that claim they can create websites is that they have a lot of standard functions, which
you can choose from. The downside is that, everything needs to fit into these standard functions.
Thus, this type of programs often cannot create a website exactly as you want it. Or - even more
annoyingly - they make changes to your hand-written code. With Notepad or other simple text
editors, you only have yourself to thank for your successes and errors.
A browser and Notepad (or a similar simple text editor) are all you need to go through this
tutorial and make your own websites.
Do I need to be online?
You do not need to be connected to the Internet - neither while reading this tutorial, nor while
making your websites.
If you want to avoid being online while reading this tutorial, you can either print it out or simply
disconnect from the Internet while reading on screen. You can make the website on your
computer's hard disk and upload it to the Internet when it is finished.
What's next?
Go to the next lesson and read about HTML before the fun really starts in Lesson 3.
What is HTML?
To make a long story short, HTML was invented in 1990 by a scientist called Tim Berners-Lee.
The purpose was to make it easier for scientists at different universities to gain access to each
other's research documents. The project became a bigger success than Tim Berners-Lee had ever
imagined. By inventing HTML he laid the foundation for the web as we know it today.
HTML is a language, which makes it possible to present information (e.g. scientific research) on
the Internet. What you see when you view a page on the Internet is your browser's interpretation
of HTML. To see the HTML code of a page on the Internet, simply click "View" in the top menu
of your browser and choose "Source".
For the untrained eye, HTML code looks complicated but this tutorial will help you make sense
of it all.
If you want to make websites, there is no way around HTML. Even if you're using a program to
create websites, such as Dreamweaver, a basic knowledge of HTML can make life a lot simpler
and your website a lot better. The good news is that HTML is easy to learn and use. In just two
lessons from now you will have learned how to make your first website.
HTML is an abbreviation of "HyperText Mark-up Language" - which is already more than you
need to know at this stage. However, for the sake of good order, let us explain in greater detail.
• Hyper is the opposite of linear. In the good old days - when a mouse was
something the cat chased - computer programs ran linearly: when the
program had executed one action it went to the next line and after that, the
next line and so on. But HTML is different - you can go wherever you want
and whenever you want. For example, it is not necessary to visit MSN.com
before you visit HTML.net.
• Text is self-explanatory.
• Mark-up is what you do with the text. You are marking up the text the same
way you do in a text editing program with headings, bullets and bold text and
so on.
• Language is what HTML is. It uses many English words.
In this tutorial you will learn so-called XHTML (Extensible HyperText Mark-up Language)
which, in short, is a new and more well-structured way of writing HTML.
Now you know what HTML (and XHTML) stands for let's get started with what it is all about:
making websites.
Elements give structure to a HTML document and tells the browser how you want your website
to be presented. Generally elements consists of a start tag, some content, and an end tag.
"Tags"?
Tags are labels you use to mark up the begining and end of an element.
All tags have the same format: they begin with a less-than sign "<" and end with a greater-than
sign ">".
Generally speaking, there are two kinds of tags - opening tags: <html> and closing tags: </html>.
The only difference between an opening tag and a closing tag is the forward slash "/". You label
content by putting it between an opening tag and a closing tag.
HTML is all about elements. To learn HTML is to learn and use different tags.
Okay, the element em emphasis text. All text between the opening tag <em> and the closing tag
</em> is emphasised in the browser. ("em" is short for "emphasis".)
Example 1:
<em>Emphasised text.</em>
Emphasised text.
The elements h1, h2, h3, h4, h5 and h6 is used to make headings (h stands for "heading"), where
h1 is the first level and normally the largest text, h2 is the second level and normally slightly
smaller text, and h6 is the sixth and last in the hierarchy of headings and normally the smallest
text.
Example 2:
<h1>This is a heading</h1>
<h2>This is a subheading</h2>
This is a heading
This is a subheading
As they say, there's an exception to every rule and in HTML the exception is that there are a few
elements which both open and close in the same tag. These so-called empty elements are not
connected to a specific passage in the text but rather are isolated labels, for example, a line break
which looks like this: <br />.
Most browsers might not care if you type your tags in upper, lower or mixed cases. <HTML>,
<html> or <HtMl> will normally give the same result. However, the correct way is to type tags
in lowercase. So get into the habit of writing your tags in lowercase.
You type your tags in an HTML document. A website contains one or more HTML documents.
When you surf the Web, you merely open different HTML documents.
If you continue to the next lesson in 10 minutes you will have made your first website.
How?
In Lesson 1 we looked at what is needed to make a website: a browser and Notepad (or similar
text editor). Since you are reading this, you most likely already have your browser open. The
only thing you need to do is to open an extra browser window (open the browser one more time)
so you can read this tutorial and see your new website at the same time.
Also, open Notepad (in Accessories under Programs in the Start menu):
Now we are ready!
Let us start with something simple. How about a page that says: "Hurrah! This is my first
website." Read on and you'll find out how simple it is.
HTML is simple and logical. The browser reads HTML like you read English: from the top
down and from left to right. Thus, an simple HTML document begins with what should come
first and ends with what should come last.
The first thing you need to do is to tell the browser that you will "talk" to it in the language
HTML. This is done with the tag <html> (no surprises there). So before you do anything else
type "<html>" in the first line of your document in Notepad.
As you may recall from the previous lessons, <html> is an opening tag and must be closed with a
closing tag when you are finished typing HTML. So to make sure you don't forget the HTML
close tag now type "</html>" a couple of lines down and write the rest of the document between
<html> and </html>.
The next thing your document needs is a "head", which provides information about your
document, and a "body", which is the content of the document. Since HTML is nothing if not
logical, the head (<head> and </head>) is on top of the body (<body> and </body>).
<html>
<head>
</head>
<body>
</body>
</html>
Note how we structured the tags with new lines (using the Enter key) as well as indents (using
the Tab key). In principle, it does not matter how you structure your HTML document. But to
help you, and others reading your coding, to keep an overview, it is strongly recommended that
you structure your HTML in a neat way with line breaks and indents, like the above
example.
If your document looks like the above example, you have made your first website - a particularly
boring website and probably not what you dreamt of when you started this tutorial but still some
sort of a website. What you have made will be the basic template for all your future HTML
documents.
As you learnt earlier, your HTML document has two parts: a head and a body. In the head
section you write information about the page, while the body contains the information that
constitutes the page.
For example, if you want to give the page a title which will appear in the top bar of the browser,
it should be done in the "head" section. The element used for a title is title. I.e. write the title of
the page between the opening tag <title> and the closing tag </title>:
Note that this title will not appear on the page itself. Anything you want to appear on the page is
content and must therefore be added between the "body" tags.
As promised, we want the page to say "Hurrah! This is my first website." This is the text that we
want to communicate and it therefore belongs in the body section. So in the body section, type
the following:
The p in <p> is short for "paragraph" which is exactly what it is - a text paragraph.
<html>
<head>
<title>My first website </title>
</head>
<body>
<p>Hurrah! This is my website.</p>
</body>
</html>
Next all you have to do is to save it to your hard drive and then open it in your browser:
It now should say "Hurrah! This is my first website." in your browser. Congratulations!
If you absolutely want the whole world to see your masterpiece right away, you can jump to
Lesson 13 and learn how to upload your page to the Internet. Otherwise, be patient and read on.
The fun has just begun.
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>
In the head section, always write a title: <title>The title of your page</title>. Notice how the
title will be shown in the upper left corner of your browser:
The title is especially important because it is used by search engines (such as Google) to index
your website and is shown in the search results.
In the body section, you write the actual content of the page. You already know some of the most
important elements:
Remember, the only way to learn HTML is by trial and error. But don't worry, there is no way
you can destroy your computer or the Internet. So keep experimenting - that is the best way to
gain experience.
What is that supposed to mean?
Nobody becomes a good website creator by learning the examples in this tutorial. What you get
in this tutorial is simply a basic understanding of the building blocks - to become good you must
use the building blocks in new and creative ways.
So, get out in the deep water and stand on your own two feet... Okay, maybe not. But give it a go
and experiment with what you have learned.
So what's next?
Try to create a few pages yourself. For instance, make a page with a title, a heading, some text, a
subhead and some more text. It is perfectly okay to look in the tutorial while you make your first
pages. But later, see if you can do it on your own - without looking.
Did you manage to make a few pages on your own? If not, here is an example:
<html>
<head>
<title>My website</title>
</head>
<body>
<h1>A Heading</h1>
<p>text, text text, text</p>
<h2>Subhead</h2>
<p>text, text text, text</p>
</body>
</html>
Now what?
In the same way you emphasise the text by putting it between the openning tag <em> and the
closing tag </em>, you can give stronger emphasis by using the openning tag <strong> and the
closing tag </strong>.
Example 1:
<strong>Stronger emphasis.</strong>
Example 2:
You can easily use several elements at the same time as long as you avoid overlapping
elements. This is best illustrated by an example:
Example 3:
The difference is that in the first example, we closed the tag we first opened last. This way we
avoid confusing both ourselves and the browser.
More elements!
As mentioned in Lesson 3 there are elements which are opened and closed in the same tag.
These so-called empty elements are not connected to a specific passage in the text but rather are
isolated labels. An example of such a tag is <br /> which creates a forced line break:
Example 4:
Some text
and some more text in a new line
Notice that the tag is written as a contraction of an opening and closing tag with an empty space
and a forward slash at the end: <br />.
Another element that is opened and closed in the same tag is <hr /> which is used to draw a
horizontal line ("hr" stands for "horizontal rule"):
Example 5:
<hr />
Examples of elements that needs both an opening tag and a closing tag - as most elements do - is
ul, ol and li. These elements are used when you want to make lists.
ul is short for "unordered list" and inserts bullets for each list item. ol is short for "ordered list"
and numbers each list item. To make items in the list use the li tag ("list item"). Confused? See
the examples:
Example 7:
<ul>
<li>A list item</li>
<li>Another list item</li>
</ul>
• A list item
• Another list item
Example 8:
<ol>
<li>First list item</li>
<li>Second list item</li>
</ol>
will look like this in the browser:
That is all for now. Again, experiment and make your own pages using some of the seven new
elements you learned in this lesson:
<strong>Stronger emphasis</strong>
<small>Small text</small>
<br /> Line shift
<hr /> Horizontal line
<ul>List</ul>
<ol>Ordered list</ol>
<li>List item</li>
Lesson 7: Attributes
You can add attributes to a number of elements.
What is an attribute?
As you probably remember, elements give structure to a HTML document and tells the browser
how you want your website to be presented (for example, <br /> informs the browser to make a
line break). In some elements you can add more information. Such additional information is
called an attribute.
Example 1:
Attributes are always written within a start tag and are followed by an equals sign and the
attribute details written between inverted commas. The semicolon after the attribute is for
separating different style commands. We will get back to that later.
There are many different attributes. The first one you will learn is style. With the style attribute
you can add layout to your website. For instance a background colour:
Example 2:
<html>
<head>
</head>
<body style="background-color:#ff0000;">
</body>
</html>
will show a completely red page in the browser - go ahead and see for yourself. We will explain
in greater detail how the colour system works in a few moments.
Note that some tags and attributes use US spelling i.e. color instead of colour. It is important that
you are careful to use the same spelling as we use in the examples in this tutorial - otherwise,
browsers will not be able to understand your codes. Also, don't forget to always close the
inverted commas after an attribute.
In the above example, we asked for the background colour with the code "#ff0000". This is the
colour code for red using so called hexadecimal numbers (HEX). Each colour has its own
hexadecimal number. Here are some examples:
White: #ffffff
Black: #000000 (zeros)
Red: #ff0000
Blue: #0000ff
Green: #00ff00
Yellow: #ffff00
A hexadecimal colour code consists of # and six digits or letters. There are more than 1000 HEX
codes and it is not easy to figure out which HEX code is tied to a specific colour. To make it
easier we have made a chart of the 216 most commonly used colours: 216 Web Safe Colour
Chart.
You can also use the English name for the most common colours (white, black, red, blue, green
and yellow).
Example 3:
You will often use attributes in tags such as the body tag while you will rarely use attributes in,
for example, a br tag since a line break normally is a line break without any parameters to adjust.
Just as there are many different elements, so there are many different attributes. Some attributes
are tailor made for one particular element while others can be used for many different element.
And vice versa: some elements can only contain one kind of attribute while others can contain
many.
It may sound a bit confusing but once you get acquainted with the different attributes it is
actually very logical and you will soon see how easy they are to use and how many possibilities
they provide.
Generally an elements consist of a start tag with or without one or more attributes, some content
and an end tag. Simple as that. See the illustration below.
Lesson 8: Links
In this lesson, you will learn how to make links between pages.
To make links, you use what you always use when coding HTML: an element. A simple element
with one attribute and you will be able to link to anything and everything. Here is an
example of what a link to HTML.net could look like:
Example 1:
<a href="http://www.html.net/">Here is a link to HTML.net</a>
The element a stands for "anchor". And the attribute href is short for "hypertext reference",
which specifies where the link leads to - typically an address on the internet or a file name.
In the above example the attribute href has the value "http://www.html.net", which is the full
address of HTML.net and is called a URL (Uniform Resource Locator). Note that "http://" must
always be included in URLs. The sentence "Here is a link to HTML.net" is the text that is shown
in the browser as the link. Remember to close the element with an </a>.
If you want to make a link between pages on the same website, you do not need to spell out the
entire address (URL) for the document. For example, if you have made two pages (let us call
them page1.htm and page2.htm) and saved them in the same folder you can make a link from
one page to the other by only typing the name of the file in the link. Under such circumstances a
link from page1.htm to page2.htm could look like this:
Example 2:
If page 2 were placed in a subfolder (named "subfolder"), the link could look like this:
Example 3:
The other way around, a link from page 2 (in the subfolder) to page 1 would look like this:
Example 4:
"../" points to the folder one level up from position of the file from which the link is made.
Following the same system, you can also point two (or more) folders up by writing "../../".
Did you understand the system? Alternatively, you can always type the complete address for the
file (URL).
What about internal links within a page?
You can also create internal links within a page - for example a table of contents at the top with
links to each chapter below. All you need to use is a very useful attribute called id
(identification) and the symbol "#".
Use the id attribute to mark the element to which you want to link. For example:
You can now create a link to that element by using "#" in the link attribute. The "#" must be
followed by the id of the tag you want to link to. For example:
Example 5:
<html>
<head>
</head>
<body>
</body>
</html>
will look like this in the browser (click on the two links):
Link to heading 1
Link to heading 2
Heading 1
Text text text text
Heading 2
Text text text text
Example 6:
The only difference between a link to an e-mail and a link to a file is that instead of typing the
address of a document, you type mailto: followed by an e-mail address. When the link is
clicked, the default e-mail program opens with a new blank message addressed to the specified e-
mail address. Please note that this function will only work if there is an e-mail program installed
on your computer. Give it a try!
To create a link, you always have to use the href attribute. In addition, you can also put a title
on your link:
Example 7:
HTML.net
The title attribute is used to type a short description of the link. If you - without clicking - place
the cursor over the link, you will see the text "Visit HTML.net and learn HTML" appears.
Lesson 9: Images
Wouldn't it be great if you could have an image of actor and music legend David Hasselhoff right
in the centre of your page?
Maybe, but in fact it is pretty easy to do. All you need is an element:
Example 1:
All you need do is first tell the browser that you want to insert an image (img) and then where it
is located (src, short for "source"). Do you get the picture?
Notice how the img element is opened and closed using the same tag. Like the <br /> tag, it is
not tied to a piece of text.
"david.jpg" is the name of the image file you want to insert in your page. ".jpg" is the file type of
the image. Just like the extension ".htm" shows that a file is an HTML document, ".jpg" tells the
browser that a file is a picture. There are three different types of image file types you can insert
into your pages:
GIF images are usually best for graphics and drawings, while JPEG images are usually
better for photographs. This is for two reasons: first, GIF images only consist of 256 colours,
while JPEG images comprise of millions of colours and second, the GIF format is better at
compressing simple images, than the JPEG format which is optimized for more complex images.
The better the compression, the smaller the size of the image file, the faster your page will load.
As you probably know from your own experience, unnecessarily 'heavy' pages can be extremely
annoying for the user.
Traditionally, the GIF and JPEG formats have been the two dominant image types, but lately, the
PNG format has become more and more popular (primarily at the expense of the GIF format).
The PNG format contains in many ways the best of both the JPEG and GIF format:
millions of colours and effective compressing.
To make your own images, you need an image editing program. An image editing program is
one of the most essential tools you need to create beautiful websites.
Unfortunately, no good image editing programs comes with Windows or other operating systems.
Thus, you might consider investing in either Paint Shop Pro, PhotoShop or Macromedia
Fireworks, which are three of the best image editing programs currently on the market.
However, as we said before, it will not be necessary to buy expensive programs to complete this
tutorial. For now, you can download the excellent image editing program IrfanView which is so-
called freeware and therefore costs nothing.
Or you can just borrow images from other sites by downloading them. But please be careful not
to violate copyrights when downloading pictures. Still, it's useful to know how to download
pictures, so here's how you do it:
Do this with the image below and save it on your computer at the same location as your HTML
documents. (Notice that the logo is saved as a PNG file: logo.png):
Now you can insert the image into one of your own pages. Try it yourself.
Is that all I need to know about images?
There are a few more things you should know about images.
First, you can easily insert pictures located in other folders, or even pictures that are located on
other websites:
Example 2:
Example 3:
Example 4:
<a href="http://www.html.net">
<img src="logo.png" /></a>
will look like this in the browser (try clicking on the image):
You always need to use the attribute src, which tells the browser where the image is located.
Besides that, there are a number of other attributes which can be useful when inserting images.
The alt attribute is used to give an alternate description of an image if, for some reason, the
image is not shown for the user. This is especially important for users with impaired vision, or if
the page is loaded very slowly. Therefore, always use the alt attribute:
Example 5:
Example 6:
If you, without clicking, place the cursor over the image, you will see the text "Learn HTML
from HTML.net" appear as a pop-up box.
Example 7:
The width and height attributes can be used to set the height and width of an image. The value
that is used to set the width and height is pixels. Pixels are the units of measurement used to
measure the resolution of screens. (The most common screen resolution is 1024x768 pixels).
Unlike centimetres, pixels are relative units of measurement which depend on the resolution of
the screen. To a user with a high screen resolution, 25 pixels may correspond to 1 centimetre,
while the same 25 pixel in a low screen resolution may correspond to 1.5 centimetres on the
screen.
If you do not set the width and height, the image will be inserted in its actual size. But with width
and height you can manipulate the size:
Example 8:
<img src="logo.gif" width="32px" height="32px" />
However, it is worth keeping in mind that the actual size in kilobytes of the image file will
remain the same so it will take the same time to load the image as it did before, even though it
appears smaller on the screen. Therefore, you should never decrease the image size by using
the width and height attributes. Instead, you should always resize your images in an image
editing program to make your pages lighter and faster.
That said, it is still a good idea to use the width and height attributes because the browser will
then be able to detect how much space the image will need in the final page layout before the
image is fully downloaded. This allows your browser to set up the page nicely in a quicker way.
Is it difficult?
Building tables in HTML may at first seem complicated but if you keep cool and watch your
step, it is actually strictly logical - just like everything else in HTML.
Example 1:
<table>
<tr>
<td>Cell 1</td>
<td>Cell 2</td>
</tr>
<tr>
<td>Cell 3</td>
<td>Cell 4</td>
</tr>
</table>
Cell Cell
3 4
As you will see from the above example, this is probably the most complicated HTML example
we have given you so far. Let's break it down and explain the different tags:
• The opening tag <table> and the closing tag </table> starts and ends the
table. Logical.
• <tr> stands for "table row" and starts and ends horizontal rows. Still logical.
• <td> is short for "table data". This tag starts and ends each cell in the rows of
your table. All simple and logical.
Here is what happens in Example 1: the table starts with a <table>, followed by a <tr>, which
indicates the beginning of a new row. Two cells are inserted in this row: <td>Cell 1</td> and
<td>Cell 2</td>. The row is hereafter closed with a </tr> and a new row <tr> begins
immediately after. The new row also contains two cells. The table is closed with </table>.
Just to make it clear: rows are horizontal lines of cells and columns are vertical lines of cells:
Cell
Cell 2
1
Cell
Cell 4
3
Cell 1 and Cell 2 form a row. Cell 1 and Cell 3 form a column.
In the above example, the table has two rows and two columns. However, a table can have an
unlimited number of rows and columns.
Example 2:
<table>
<tr>
<td>Cell 1</td>
<td>Cell 2</td>
<td>Cell 3</td>
<td>Cell 4</td>
</tr>
<tr>
<td>Cell 5</td>
<td>Cell 6</td>
<td>Cell 7</td>
<td>Cell 8</td>
</tr>
<tr>
<td>Cell 9</td>
<td>Cell 10</td>
<td>Cell 11</td>
<td>Cell 12</td>
</tr>
</table>
Cell
Cell 2 Cell 3 Cell 4
1
Cell
Cell 6 Cell 7 Cell 8
5
Of course there are attributes. For example, the border attribute is used to specify the thickness of
the border around your table:
Example 3:
<table border="1">
<tr>
<td>Cell 1</td>
<td>Cell 2</td>
</tr>
<tr>
<td>Cell 3</td>
<td>Cell 4</td>
</tr>
</table>
Cell Cell 2
1
Cell
Cell 4
3
As with images, you can also set the width of a table in pixels - or alternatively in percentage of
the screen:
Example 4:
This example will be displayed in the browser as a table with the width of 30% of the screen. Try
it yourself.
More attributes?
There are lots of attributes for tables. Here are two more:
• align: specifies the horizontal alignment of the content in the entire table, in a
row or in a single cell. For example, left, center or right.
• valign: specifies the vertical alignment of the content in a cell. For example,
top, middle or bottom.
Example 5:
Theoretically, you can insert anything in tables: text, links and images... BUT tables are meant
for presenting tabular data (i.e. data which can be meaningfully presented in columns and
rows) so refrain from putting things into tables simply because you want them to be placed next
to each other.
In the old days on the Internet - i.e. a few years ago - tables were often used as a layout tool. But
if you want to control the presentation of texts and images there is a much cooler way to do it
(hint: CSS). But more about that later.
Now, put what you just learned to practice and design a number of tables in different sizes, with
different attributes and content. This should keep you busy for hours.
The two attributes colspan and rowspan are used when you want to create fancy tables.
Colspan is short for "column span". Colspan is used in the <td> tag to specify how many
columns the cell should span:
Example 1:
<table border="1">
<tr>
<td colspan="3">Cell 1</td>
</tr>
<tr>
<td>Cell 2</td>
<td>Cell 3</td>
<td>Cell 4</td>
</tr>
</table>
Cell 1
Cell Cell
Cell 4
2 3
By setting colspan to "3", the cell in the first row spans three columns. If we instead had set
colspan to "2", the cell would only have spanned two columns and it would have been necessary
to insert an additional cell in the first row so that the number of columns will fit in the two rows.
Example 2:
<table border="1">
<tr>
<td colspan="2">Cell 1</td>
<td>Cell 2</td>
</tr>
<tr>
<td>Cell 3</td>
<td>Cell 4</td>
<td>Cell 5</td>
</tr>
</table>
Cell 1 Cell 2
Cell Cell
Cell 5
3 4
As you might already have guessed, rowspan specifies how many rows a cell should span
over:
Example 3:
<table border="1">
<tr>
<td rowspan="3">Cell 1</td>
<td>Cell 2</td>
</tr>
<tr>
<td>Cell 3</td>
</tr>
<tr>
<td>Cell 4</td>
</tr>
</table>
Cell 2
Cell
Cell 3
1
Cell 4
In the example above rowspan is set to "3" in Cell 1. This specifies that the cell must span over 3
rows (its own row plus an additional two). Cell 1 and Cell 2 are thereby in the same row, while
Cell 3 and Cell 4 form two independent rows.
Confused? Well, it is not uncomplicated and it is easy to lose track. Therefore, it might be a good
idea to draw the table on a piece of paper before you begin with the HTML.
Not confused? Then go ahead and create a couple of tables with both colspan and rowspan on
your own.
To give your website layout use Cascading Style Sheets (CSS). In this lesson you will get a
short introduction to CSS. But later you can learn all about CSS from scratch in our CSS tutorial.
So please consider this lesson only as an appetizer.
CSS is the better half of HTML. And in coding, there is no equality of status: HTML takes care
of the rough stuff (the structure), while CSS gives it a nice touch (layout).
As shown in Lesson 7, CSS can be added with the style attribute. For example, you can set the
font type and size on a paragraph:
Example 1:
This is typed in Courier size 20px
In the example above we use the style attribute to specify the type of font to be used (with the
command font-family) and the font size (with the command font-size). Notice how in the
last paragraph we set both the font type and size with a separating semicolon.
One of the smart features of CSS is the possibility to manage your layout centrally. Instead
of using the style attribute in each tag, you can tell the browser once how it must layout all the
text on the page:
Example 2:
<html>
<head>
<title>My first CSS page</title>
<style type="text/css">
h1 {font-size: 30px; font-family: arial;}
h2 {font-size: 15px; font-family: courier;}
p {font-size: 8px; font-family: "times new roman";}
</style>
</head>
<body>
<h1>My first CSS page</h1>
<h2>Welcome to my first CSS page</h2>
<p>Here you can see how CSS works </p>
</body>
</html>
• Show example
In the example above CSS has been inserted in the head section and therefore applies to the
entire page. To do this, just use the tag <style type="text/css"> which tells the browser that
you are typing CSS.
In the example all headings on the page will be in Arial in size 30px. All subheads will in Courier
size 15. And all text in normal paragraphs will be in Times New Roman size 8.
Another option is to type the CSS in a separate document. With a separate CSS document you
can manage the layout of many pages all at once. Pretty smart if you want to change the font
type or size on a large website with hundreds or thousands of pages. We won't go into that now
but you can learn it later in our CSS tutorial.
What else can I do with CSS?
CSS can be used for much more than specifying font types and sizes. For example, you can add
colours and backgrounds. Here are some examples for you to experiment with:
Try inserting the examples in some of your pages - both as shown above and also as CSS
inserted in the head section.
Besides adding layout such as colors, font types etc., CSS can also be used to control the page
setup and presentation (margins, float, alignment, width, height etc.). By regulating the
different elements with CSS you are able to layout your pages elegantly and precisely.
Example 3:
I love CSS
With the property float an element can either be floated to the right or to the left. The following
example illustrates the principle:
Example 4:
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod
tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis
nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat...
In the example, one element (the image) floats to the left and the other element (the text) fills the
hole.
With the property position, you can place an element exactly where you want it in your page:
Example 5:
• Show example
In the example the image is placed 50 pixels from the bottom and 10 pixels from the right in the
browser. But you can place it exactly where you want it. Give it a try. Pretty easy and pretty cool,
eh?
You do not learn CSS in 10 minutes. And as mentioned above, this lesson is only meant as a
brief introduction. Later you will learn much more in our CSS Tutorial.
For now, concentrate on HTML, and move on to the next lesson where you will learn how to get
your website out on the Internet so the whole world can see it!
The world is ready - you soon will be too. To get your website on the internet, you just need
some server space and a free FTP program.
If you have Internet access, you might already have some free server space for your website.
Your server space will then probably be called something like
http://home.provider.com/~usernumber. But you might need to activate it first. Read more about
this in the papers from your Internet provider or on their support pages.
Another option is to get some free server space on the Internet. In the same way that you set up
an e-mail account (at for example Hotmail), you can register for free server space on the
Internet. Several companies offer such a service - among them Angelfire (click "Sign Up" and
choose the free membership) - it will only take a couple of minutes to register.
To have access to the server, you need to know the "Host Name" (For example,
ftp.angelfire.com) and have your username and password ready.
To access the server and upload your pages, you also need an FTP program. FTP is short for File
Transfer Protocol. A FTP program is used to connect two computers over the Internet so that you
can transfer files from your computer to another computer (the server). You might not have such
a program yet, but fortunately, this can be downloaded for free.
There are many different FTP programs. One of the better is FileZilla, which is entirely
free. So now you can download FileZilla at filezilla.sourceforge.net.
Described below is how you upload your pages to a free account at Angelfire with FileZilla. But
the procedure is, more or less, the same for all providers and FTP programs.
Open the FTP program while connected to the Internet. Insert "Host Name" ("ftp.angelfire.com"
under "Address"), username (under "User") and password (under "Password") and click
"Connect". You should now have access to the server. In one side of the program you can see the
contents of your computer ("Local Site"), and in the other side, you can see the content of the
server ("Remote Site"):
Find your HTML documents and images on your computer (on the "Local site") and transfer
them to the server (the "Remote site") by double clicking on them. Now the whole world can see
them! (For example, at the address http://www.angelfire.com/folk/htmlnet/page1.htm).
Name one of the pages "index.htm" (or "index.html") and it will automatically become the start
page. i.e. if you type http://www.angelfire.com/folk/htmlnet (without any filename) you will
actually open http://www.angelfire.com/folk/htmlnet/index.htm.
In the long run, it might be a good idea to purchase your own domain (for example
www.your-name.com or www.your-name.net) and avoid the long and complicated addresses you
are being assigned by your Internet provider or from providers of free server space. You can find
and purchase domains at for example Speednames or NetworkSolutions.
HTML can be coded in many different ways. And browsers can read HTML in just as many
ways. You could say that HTML has many dialects. That is why some websites look different in
different browsers.
There have been attempts to make a common standard of HTML through the World Wide
Web Consortium (W3C) founded by Tim Berners-Lee (yep! the great guy who invented
HTML). But it has been a long and tough road.
In the old days - when browsers where something you had to pay for - Netscape was the
dominate browser. Back then, the most supported HTML standard where called 2.0 and later 3.2.
But with a market share of over 90% Netscape did not have to - and did not - care much about
common standards. On the contrary, Netscape invented their own strange elements, which did
not function in other browsers.
For many years Microsoft almost completely ignored the Internet. After a while they took up the
competition with Netscape and introduced a browser. The first versions of Microsoft's browser,
Internet Explorer, were not any better than Netscape at supporting the HTML standards. But
Microsoft chose to give away their browser for free (always a popular thing to do) and Internet
Explorer soon became the most popular browser.
From version 4 and 5 Microsoft aimed to support more and more of the HTML standards from
W3C. Netscape did not manage to develop a new version of their browser and continued to
distribute the outdated version 4.
The rest is history. Today the HTML standards are called 4.01 and XHTML. Now it is Internet
Explorer that has a market share of over 90%. Internet Explorer still has its own strange elements
but it also supports the W3C HTML standards. And so do all of the other browsers, such as
Mozilla, Opera and Netscape.
So, when you code HTML following the W3C standards, you make websites that can be
seen in all browsers - both now and in the future. And luckily, what you have learned in this
tutorial is a new and stricter and cleaner version of HTML called XHTML.
With all the different types of HTML you need to tell the browser which "dialect" your HTML is
in, in your case XHTML. To do that, you use a Document Type Declaration. The Document Type
Declaration is always written in the top of the document:
Example 1:
<head>
<title>Title</title>
</head>
<body>
<p>text text</p>
</body>
</html>
Besides the Document Type Declaration (the first line in the example above), which tells the
browser that you want to write XHTML, you also need to insert some extra information in the
html tag with the two attributes xmlns and lang.
xmlns is short for "XML-Name-Space" and should always have the value
http://www.w3.org/1999/xhtml. That is all you need to know. But if you have a big hunger for
complicated knowledge you can read more about namespaces on W3C's website.
In the lang attribute you state which language the document is written in. For this the ISO 639
standard is used, which lists codes for all the languages in the world. In the example above the
language are set to English ("en").
With a DTD the browser knows exactly how it should read and show your HTML. Hence, use
the example above as template for all your future HTML documents.
The DTD is also important when you want to validate your pages.
Insert a DTD in your pages and you can always check your HTML for errors by using W3C's
free validator.
To test this out, make a page and upload it to the Internet. Now, go to validator.w3.org and type
the address (the URL) of your page and validate it. If your HTML is correct you will get a
congratulations message. Otherwise you will get an error report telling you exactly what and
where you have done something wrong. Make some errors on purpose to see what happens.
The validator is not just helpful to locate an error. Some browsers try to compensate for lack of
skills among web developers by trying to fix errors in the HTML and showing the page as they
guess it should look. With such browsers, you might never see an error in your own browser.
However, other browsers might guess differently or not show the page at all. The validator can
help you find errors you did not even know existed.
Always validate your pages to be sure they will always be shown correctly.
You have learned a lot and you are now capable of making your own websites! However, what
you have learned are the basics and there is still a lot more to be mastered. But you now have a
good foundation from which to build on.
First of all, it is important that you continue to work and experiment with the things you have
learned in this tutorial. Study other people's websites and if you find something you like see how
it was made with "View Source" (Click "View" in the menu in your browser and choose
"Source").
Search the Internet for examples and articles on HTML. There are lots of websites with great
contents on HTML.
Read and ask questions in the many discussion boards on the Internet. Two of the best places are
the Newsgroups and Experts Exchange. This is where you meet the real experts from whom you
can learn a lot.
Last, but not least, you should - whenever you feel ready - continue learning CSS in our CSS
Tutorial.
The only thing left is to wish you hours of fun with your new friend, HTML.
To make links, you use what you always use when coding HTML: an element. A simple element
with one attribute and you will be able to link to anything and everything. Here is an
example of what a link to HTML.net could look like:
Example 1:
The element a stands for "anchor". And the attribute href is short for "hypertext reference",
which specifies where the link leads to - typically an address on the internet or a file name.
In the above example the attribute href has the value "http://www.html.net", which is the full
address of HTML.net and is called a URL (Uniform Resource Locator). Note that "http://" must
always be included in URLs. The sentence "Here is a link to HTML.net" is the text that is shown
in the browser as the link. Remember to close the element with an </a>.
If you want to make a link between pages on the same website, you do not need to spell out the
entire address (URL) for the document. For example, if you have made two pages (let us call
them page1.htm and page2.htm) and saved them in the same folder you can make a link from
one page to the other by only typing the name of the file in the link. Under such circumstances a
link from page1.htm to page2.htm could look like this:
Example 2:
<a href="page2.htm">Click here to go to page 2</a>
If page 2 were placed in a subfolder (named "subfolder"), the link could look like this:
Example 3:
The other way around, a link from page 2 (in the subfolder) to page 1 would look like this:
Example 4:
"../" points to the folder one level up from position of the file from which the link is made.
Following the same system, you can also point two (or more) folders up by writing "../../".
Did you understand the system? Alternatively, you can always type the complete address for the
file (URL).
You can also create internal links within a page - for example a table of contents at the top with
links to each chapter below. All you need to use is a very useful attribute called id
(identification) and the symbol "#".
Use the id attribute to mark the element to which you want to link. For example:
You can now create a link to that element by using "#" in the link attribute. The "#" must be
followed by the id of the tag you want to link to. For example:
Example 5:
<html>
<head>
</head>
<body>
</body>
</html>
will look like this in the browser (click on the two links):
Link to heading 1
Link to heading 2
Heading 1
Text text text text
Heading 2
Text text text text
Example 6:
To create a link, you always have to use the href attribute. In addition, you can also put a title
on your link:
Example 7:
HTML.net
The title attribute is used to type a short description of the link. If you - without clicking - place
the cursor over the link, you will see the text "Visit HTML.net and learn HTML" appears.