Adding Hypertext Links to a Web Page

Download Report

Transcript Adding Hypertext Links to a Web Page

Developing a Web Site
Maureen Smith
Professor, Saddleback College
Tutorial 2
Lesson Plan



Review
How to create an Index page and FTP
Tutorial 2 – Developing a Basic Web
Site
– Session 2.1
– Session 2.2
– Session 2.3

Review
Session 2.1

In this session, you will create a web
site for digital photography enthusiasts
Exploring Web Site Structures

Web sites use several different
structures
– Examining them can help you decide how
to design your own sites

Before you set up links for a site, it’s
worthwhile to map out exactly how you
want the pages to relate
– Called storyboarding
– A diagram of the site’s structure

Every Web site begins with a single
home page (index.html) that acts as a
focal point for the site
– You add links to other pages in the site,
creating the overall structure
Linear Structures

An online version of a famous play
would have links between individual
scenes
– This would use a linear structure in which
each page is linked with the pages that
follow and precede it in an ordered chain

Linear works best for pages with a
clearly defined order
– But difficult as the chain of pages
increases in length
– Can modify to make it easier to return
immediately to opening page, rather than
backtracking, by using an augmented
linear structure
– Each page contains an additional link back
to opening page
Augmented linear structure
Hierarchical structures

A hierarchical structure starts with a
general topic that includes links to more
specific topics
– Each specific topic includes links to yet
more specialized topics, etc
– Users can easily move from general to
specific and back, but not from specific to
specific
Hierarchical structure
Mixed Structures

As a site becomes more complex, may
use a combination of structures
– Includes both hierarchical and linear
– See Figure 2-5

Search results can point to any page
and will need a way to quickly
understand what your site contains and
how to get at it
– So each page should contain at minimum a
link to home page
– May want to use a site index—a page
containing an outline of entire site and its
contents
– See Figure 2-6 for a confusing structure
Creating a Hypertext Link

Gerry wants his site visitors to be able
to move effortlessly among three
documents he’s created
– Need to link each page to the other two
– See figure 2-8

To create the link, enclose the content
in an <a> tag and use href attribute to
identify the link target
– <a href=“tips.htm”>Photography tips</a>
– Words will be underlined to show it is
linked to another document; click the text
and the browser will load the linked
document (tips.htm)
• Use lowercase filenames and avoid special
characters like blanks and slashes

Rename the three data files as
home.htm, tips.htm, and glossary.htm
– These document names are already at the
top of each file and you will mark them as
hypertext links to each other
– Let’s begin with the names in the
home.htm file
• See tutorial2/home1.htm, tips1.htm, and
glossary1.htm
Specifying a Folder Path

So far you specified only the filename
and not the location of the file
– Browser will search the same folder as the
document containing the hypertext link
– But large sites with hundreds of documents
often place them in separate folders for
easier management

As we add more files, will want to use
folders
– See figure 2-11
Absolute Paths

The absolute path shows exactly where
the file is on the computer
– In HTML, you start every absolute
pathname with a slash (/)
– Then you type the folder names on the
computer, starting with the topmost folder
in the folder hierarchy and progressing
through the different levels of subfolders
– Separate each folder name from the next
with a slash
– The pathname, from left to right, leads
down through the folder hierarchy to the
folder that contains the file
– After you type the name of the folder that
contains the file, you type a final slash and
then the filename
– See Figure 2-12

If on different drives, must include drive
letter as well
/C|/faculty/dube/class/chem.htm

Don’t have to include drive letter if
destination document is on same drive
as the document containing the link
Relative Paths

If a computer has many folders and
subfolders, absolute pathnames can be
long, cumbersome, confusing
– For that reason, most Web authors use
relative pathnames in their hypertext links
– A relative path gives a file’s location in
relation to the current document
– Unlike absolute pathnames, a relative
pathname does not begin with a slash
– To reference a file in a folder above the
current folder in the folder hierarchy,
relative pathnames use two periods (..)
– To specify a different folder on same level
(sibling folder), move up folder tree using
double period and then down using name
of sibling folder
– See Figure 2-13

Should almost always use relative paths
– Are portable—if you move files to a
different computer or server, can move
entire folder structure without changing
relative pathnames you created
– If you use absolute, would have to revise
each link to reflect new location
Changing the Base

The browser resolves relative
pathnames by default based on location
of current document
– Can change by specifying a different base
in document’s head
– <base href=“path” />
– where path is folder location that you want
browser to use
Linking to Locations within
Documents

Let’s add more links to Glossary page
– Contains a list of digital photography terms
– Very long, lots of scrolling
– Let’s use the list of letters (a to z) to jump
to a specific section of the document by
clicking
A to Z
Using the id Attribute

To jump to a specific location within a
document, first need to mark that
location
– One way is through the id attribute
<h2 id=“H”>H</h2>
– Assigns the id name “H” to the h2 heading
“H”
– id names MUST BE UNIQUE
– If you assign same id name to several
elements on the page, the browser uses
the first one it finds
– XHTML docs will be rejected with duplicate
ids
– Not case sensitive—no difference between
top and TOP

With only a partial list of terms, let’s
mark only sections A through F
– We’ll use id names classes, grading, app,
and safety
– See tutorial2/glossary2.htm

For longer docs, it’s also helpful to jump
directly from bottom of a long page to
the top, rather than scrolling

So let’s add an id attribute marking the
element at the top of the page
– See tutorial2/glossary3.htm
Linking to an id

Once you’ve marked an element with an
id, can create a hypertext link to that
element
<a href=“#id”>content</a>
– Where id is the value of the id attribute of
the element
<a href=“#A”></a>

Use this code to change the entries on
Glossary page to hypertext links
pointing to the section of the glossary
corresponding to the selected letter
– See tutorial2/glossary4.htm
Creating Links between
Documents

Let’s create links from words used in the
articles to glossary entries so readers
can quickly access definitions for those
terms
– Articles are not on the same page as his
Glossary, so we need to link those pages
with specific glossary entries
<a href=“glossary.htm#D”>”D” terms in the
Glossary</a>
– This creates a link to the D section in the
glossary.htm file
– Assumes they are in the same folder

On the home page he wants to
showcase a Photo of the Month
– Includes digital camera settings used in
taking the photo
– Many settings are described on the
Glossary page
– Let’s create a link between setting name
and the glossary entry
• Use the id attribute
• See tutorial2/glossary5.htm
– Then go to the Home page and create links
from these terms in the Photo of the Month
description to their entries on Glossary
• See tutorial2/home2.htm
Working with Linked Images and
Image Maps

Standard practice to turn a site’s logo
into a hypertext link pointing to the
home page
– Quick reference point to home page rather
than searching for a link
<a href=“reference”><img src=“file” alt=“text”
/></a>
Introducing Image Maps

When you mark an image as a link,
entire image is linked to same
destination file
– However, HTML also allows you to divide
an image into different zones, or hotspots,
each linked to a different destination
– Gerry wants this with the CAMshots logo
• Would also like hotspots
– If user clicks anywhere within CAMshots
circle on left side of logo, user jumps to
Home page
• Clicking either Tips or Photo Glossary in the
logo takes user to Tips page or Glossary page
• See Figure 24

To define hotspots, you create an image
map that matches specified regions of
image to a specific destination
Client-Side Image Maps

Client-side image map is handled entirely
by the browser on user’s computer
– Defined with the map element
<map id=“map” name=“map”> hotspots
</map>
– Where map is name of image map and
hotspots are locations of hotspots within the
image
– Each image map has to be given an id and
a name
• Both are needed to satisfy HTML and XHTML;
will work in all browsers

Map elements can be placed anywhere
in body of page because they are not
actually displayed by browser
– Used as references for mapping hotspots
to inline images; commonly placed below
Defining Hotspots

Individual hotspots are defined using
the area element
<area shape=“shape” coords=“coordinates”
href=“reference” alt=“text” />
– Where shape is the shape of the hotspot
region, coordinates are the list of points
that define boundaries, reference is the file
or location that hotspot is linked to
– Hotspots can be rectangles, circles, or
polygons; “rect”, “circle”, or “poly”
– Fourth shape is “default” representing
remaining area not covered by hotspots
• No limit to number
• Can overlap (browser will open the link of the
first hotspot defined in map)

Hotspot coordinates are measured in
pixels (dots)
– When used with coords attribute, the pixel
values exactly define location/size of
hotspot region
<area shape=“rect” coords=“x1, y1, x2, y2”
… />
– Where x1, y1 are upper-left corner of the
rectangle and x2, y2 are lower-right corner
– Always expressed relative to top-left corner

Circular hotspots are defined as
<area shape=“circle” coords=“x, y, r” … />
– Where x and y are coordinates of center of
the circle and r is circle’s radius

Polygonal hotspots are defined as
<area shape=“poly” coords=“x1, y1, x2, y2,
x3, y3, …” …/>
– Where x1, etc. are each corner of shape
– With polygons you can create a wide
variety of shapes as long as you know the
coordinates to each corner

To define default hotspot
<area shape=“default” coords=“0, 0, x, y” …
/>
– Where x is width of the image in pixels and
y is the image’s height
– Any spot in the image not covered by
another hotspot will activate the default
hotspot link


Use Photoshop or Paint to determine
hotspot coordinates
Gerry wants an image map
– See tutorial2/home3.htm
That’s a lot of typing!

Now that you’ve defined the image map,
next task is to apply it to the CAMshots
logo
Applying an Image Map

To apply an image map to an image,
add the usemap attribute to the <img>
tag
<img src=“file” alt=“text” usemap=“#map” />
– Where map is the id or name of the map
– See tutorial2/home4.htm

Might have noticed a border was added
around the image
– Hypertext links are usually underlined and
inline images have a lined border
– If it detracts from the appearance, it can be
removed
style=“border-width: 0”
– See tutorial2/home5.htm

Now that you have an image map for
the logo on the home page, can create
similar maps for logos on Tips and
Glossary pages
– See tutorial2/tips2.htm
– See tutorial2/gloss6.htm
– Use copy and paste
That is
so
cool!!!
Server-Side Image Maps

A server-side image map is stored on a
Web server rather than entered into
HTML code of the web page
– When you click a hotspot, coordinates are
sent to the server which then downloads
the page to the browser
– This was the original HTML standard and
is still supported
– But has some limitations:
• Cannot test without server access
• Might be slower

Gerry is pleased
– Wants links to other sources of info about
digital photography and digital cameras
Session 2.3

In the tips.htm file, Gerry has listed
some Web sites that may be useful
– Let’s change these names to links
Introducing URLs

Need to know the URL to link to a
resource on the Internet
– URL, or Uniform Resource Locator,
specifies precise location of a resource
– Name is taken from protocol used to
access the resource
– A protocol is a set of rules defining how
info is exchanged between two devices
– Browser communicates with servers using
the Hypertext Transfer Protocol or HTTP
– So URLs for all Web pages begin with
“http”
– See Figure 2-31 for other protocols
Linking to a Web Site

URL for a Web page:
– http://server/path/filename#id
– where server is name of server storing file,
path is path to file on that server, filename
is name of file, and if necessary, id is name
of an id or anchor within the file
http://www.mwu.edu/course/info.htm#majors
protocol/server/path/filename/id or anchor name

There are four Web page URLs to add
to our Tips page
– See list in Figure 2-33
– Each URL will be the href attribute value
for the appropriate <a> tag
<a href=“http://www.apogeephoto.com”>
Apogee Photo</a>
– See tutorial2/tips3.htm
Linking to FTP Servers

FTP servers are one of the main
resources for storing files on Internet
– Use a communications protocol called File
Transfer Protocol or FTP
ftp://server/path/filename
– See Figure 2-36

Requires password and username to
access files
– Browser supplies this info automatically
with “anonymous” username, but some do
not allow anonymous access
Linking to a Local File

May see a file stored locally on your
computer or LAN
file://server/path/filename
– Rarely used in Web pages
Linking to an E-mail Address

Can communicate with site’s owner or
staff of organization that runs the site
through e-mail
mailto:address
See the demo file

Let’s add a link to Gerry’s e-mail
address
– See tutorial2/home6.htm

There are problems with e-mail links
– User may not know how to use e-mail
client
– User’s browser may open wrong e-mail
client
– Increased spam—unsolicited junk e-mail

Spammers create their e-mail lists by:
– Scanning Usenet postings, stealing
Internet mailing lists, using programs called
e-mail harvesters that scan mailto URLs
– Many developers are removing e-mail links
in favor of Web forms that submit e-mail
requests to a secure server
– See suggestions on page 98
Working with Hypertext
Attributes

Several attributes control behavior and
appearance of links
Opening a Secondary Window

By default, each new page you open
replaces contents of previous page
– Clicking on external links on links page
would leave chem Web site—would have
to click the back button

Let’s have links displayed in second
window
<a href=“url” target=“window”>content</a>
– Window is name assigned to new window
– If several links have same target name, all
open in same window, replacing previous
contents
– HTML supports several special target
names—See Figure 2-41

Let’s target a window called “new”
– See tutorial2/tips4.htm

Target attribute is not supported in strict
XHTML-compliant code
– Use sparingly; creating secondary windows
can clog up user’s desktop and users
cannot see their Back button
Creating a Tooltip

Can add a tooltip to your links to provide
additional info
– Descriptive text that appears whenever
user positions mouse over a link
– See Figure 2-43
<a href=“gloss.htm” title=“Study photo
terminology in the CAMshots
glossary”>Glossary</a>
– Not supported by all browsers
Creating a Semantic Link

Two attributes, rel and rev, let you
specify relationship between a link and
its destination
– Rel describes contents; example, linking to
a glossary of chemistry terms
<a href=“gloss.htm”
rel=“glossary”>Glossary</a>

Rev complements rel and describes
contents of source document as viewed
from destination document’s
perspective
– To go from chem home page to glossary,
might include the following to describe
where the user is coming from
<a href=“gloss.htm” rel=“glossary”
rev=“home”>Glossary</a>

These links are called semantic links
because the tag contains info re the
relationship between link and
destination
– Not designed for user, but for browser
– See Figure 2-44 for link types that can be
used
Using the Link Element

Another way to add a link to your page
is to add a link element to document’s
head
– Intended for browser use and do not
appear in browser window
– Typically used to connect to style sheets
Tips for Creating Effective Links



Storyboard your site before you create it
Make sure users can easily navigate
your site by linking each page to the
site’s home page and a page containing
a site index
Avoid using text like “click here” in your
links—make sure your linked text
describes what the destination contains



Never place two links adjacent to one
another; separate them with text or
extra space or symbol
Avoid long pages; break up each page
into a sequence of linked pages
If you do create a long page, create
links to different sections and a link
back to top of page



Use only lowercase filenames for all
documents
Use anchors if you need your internal
document links to work with older
browsers
Use care when inserting an e-mail link
– Research latest tools to thwart harvesters
and spammers
Working with Metadata

Gerry wants the site to be picked up by
major search engines like Yahoo! And
Google
– Optimizing for search engines can be a
long, involved process
– So web authors often turn to companies
that specialize in that
– Gerry doesn’t want to invest any $$--what
can help?
Using the Meta Element

To be notice on the Web, a site needs
to include info about itself so search
engines can read it and add the site to
their indices
– Info about the site is called metadata
– Added to head section
<meta name=“text” content=“text”
scheme=“text” http-equiv=“text” />
– Where name specifies type of metadata,
content stores the metadata value, scheme
defines the metadata format, and httpequiv is used to attach metadata or
commands to the communication stream
between the server and the browser

There are 3 uses of the meta element:
– To store info about the doc that can be
read by the author, other users, or server
– To control how the browser handles the
document, including forcing the browser to
automatically refresh the page at timed
intervals
– To assist Web search engines in adding
the document to their search index

Should include metadata describing the
site and topics covered
– Use site description and list of keywords
– See figure 2-46 for examples of metadata
– Doesn’t take much effort, so should include
meta elements in your web docs
– See tutorial2/home7.htm
Are we done yet?
Applying Metadata to the
Communication Stream

Servers transmit Web pages using a
communication protocol called HTTP
– Can add info and commands to this stream
with meta element’s http-equiv attribute
– One common use is to force browser to
refresh at timed intervals
• Useful for sites that publish scoreboards or
stock tickers
– To refresh every 60 seconds:
<meta http-equiv=“refresh” content=“60” />
– See other uses of the meta element on
pages 105-106