HTML Links: How to create Links to other Web Pages
This article explains how to create a link from one page to another. It also outlines the different types of hyperlinks.
Links, otherwise known as hyperlinks, are defined using the
<a> tag — otherwise known as the anchor element.
To create a hyperlink, you use the
<a> tag in conjunction with the
href attribute. The value of the href attribute is the URL, or, location of where the link is pointing to.
<p>Here are some <a href="http://www.quackit.com/html/codes/">HTML codes</a> to play with.</p>
Hypertext references can use absolute URLS, relative URLs, or root relative URLs.
This refers to a URL where the full path is provided. For example:
<a href="http://www.quackit.com/html/tutorial/">HTML Tutorial</a>
This refers to a URL where the path, relative to the current location, is provided.
For example, if we want to reference the http://www.quackit.com/html/tutorial/ URL, and our current location is http://www.quackit.com/html/, we would use this:
<a href="tutorial/">HTML Tutorial</a>
- root relative
This refers to a URL where the path, relative to the domain's root, is provided.
For example, if we want to reference the http://www.quackit.com/html/tutorial/ URL, and the current location is http://www.quackit.com/html/, we could use this:
<a href="/html/tutorial/">HTML Tutorial</a>
The forward slash indicates the domain's root. No matter where your file is located, you can always use this method to specify the path, even if you don't know what the domain name will eventually be (as long as you know the full path from the root).
You can nominate whether to open the URL in a new window or the current window. You do this with the
target attribute. For example,
target="_blank" opens the URL in a new window.
The target attribute can have the following possible values:
|Opens the URL in a new browser window.|
|Loads the URL in the current browser window.|
|Loads the URL into the parent frame (still within the current browser window). This is only applicable when using frames.|
|Loads the URL in the current browser window, but cancelling out any frames. Therefore, if frames were being used, they aren't any longer.|
<a href="http://www.quackit.com" target="_blank">Quackit</a>
You can make your links "jump" to other sections within the same page (or another page). These used to be called "named anchors", but they're often referred to as jump links, bookmarks, or fragment identifiers.
Here's how to link to the same page:
Add an ID to the Link Target
Add an ID to the part of the page that you want the user to end up. To do this, use the
idattribute. The value should be some short descriptive text. The
idattribute is a commonly used attribute in HTML.
Create the Hyperlink
Now create the hyperlink (that the user will click on). This is done by using the
idof the link target, preceded by a hash (
<a href="#elephants">Jump to Elephants</a>
So these two pieces of code are placed in different parts of the document. Something like this:
<!DOCTYPE html> <html> <body> <p><a href="#elephants">Jump to Elephants</a></p> <h2>Cats</h2> <p>All about cats.</p> <h2>Dogs</h2> <p>All about dogs.</p> <h2>Birds</h2> <p>All about birds.</p> <h2 id="elephants">Elephants</h2> <p>All about elephants.</p> <h2>Monkeys</h2> <p>All about monkeys.</p> <h2>Snakes</h2> <p>All about snakes.</p> <h2>Rats</h2> <p>All about rats.</p> <h2>Fish</h2> <p>All about fish.</p> <h2>Buffalo</h2> <p>All about buffalo.</p> </body> </html>
It doesn't have to be the same page. You can use this method to jump to an ID of any page. To do this, simply add the destination URL before the hash (
#) symbol. Example:
<a href="http://www.example.com#elephants">Jump to Elephants</a>
Of course, this assumes that there's an ID with that value on the page.
You can create a hyperlink to an email address. To do this, use the
mailto attribute in your anchor tag.
<a href="mailto:email@example.com">Email King Kong</a>
Clicking on this link should result in your default email client opening up with the email address already filled out.
You can go a step further than this. You can auto-complete the subject line for your users, and even the body of the email. You do this appending
body parameters to the email address.
<a href="mailto:firstname.lastname@example.org?subject=Question&body=Hey there">Email King Kong</a>
You can specify a default URL for all links on the page to start with. You do this by placing the
base tag (in conjunction with the
href attribute) in the document's
Example HTML Code:
<!DOCTYPE html> <html> <head> <title>Example</title> <base url="http://www.quackit.com"> </head> <body> <a href="html">HTML</a> </body> </html>