Beginning HTML5 and CSS3 For Dummies
Book image
Explore Book Buy On Amazon

Links can connect to virtually any kind of file, such as word processing documents, spreadsheets, PDFs, compressed files, and multimedia. Two typical uses for non-HTML links are software and PDF download pages.

File downloads

Non-web files must nevertheless be accessed via the Internet, so they possess unique URLs, just like HTML pages. Any file on a web server (regardless of its type) can be linked using a URL.

For instance, if you want your users to download a PDF file named doc.pdf and a Zip archive called from a web page, you use this HTML:

<h1>Download the new version of our software</h1>
<p><a href="">Software</a></p>
<p><a href="doc.pdf">Documentation</a></p>

You can’t know how any user’s browser will respond to a click on a link that leads to a non-web file. The browser may

  • Prompt the user to save the file.

  • Display the file without downloading it (common for PDFs).

  • Display an error message (if the browser can’t handle or doesn’t recognize the type of file involved).

Because you can’t know how a browser will respond, help users download files successfully by providing

  • As much information as possible about the file formats in use

  • Any special tools they need to work with the files

    • Compressed files: To work with the contents of a Zip file, the users need a compression utility, such as WinZip or ZipIt, if their operating systems don’t support Zip files natively.

    • PDFs: To view a PDF file, users need the free Adobe Acrobat Reader (or some equivalent, such as Nitro PDF Reader).

You can make download markup more user-friendly by adding supporting text and links, like this:

<h1>Download our new software</h1>
      <p> <a href="">Software</a> (1.2 MB compressed ZIP file)</p>
            You need a zip utility such as
         <a href="">7Zip</a> (Windows) or
         <a href="">ZipIt</a> (Macintosh)
            to open a ZIP file.</p>
     <p><a href="doc.pdf">Documentation</a> (440 KB PDF file) </p>
     <p><b>Note:</b>You need the free
        <a href="">Adobe Reader</a>
           to view a PDF file.</p>

The figure shows how a browser renders this HTML, and the dialog box it displays when you click the Software link.


E-mail addresses

A link to an e-mail address can automatically open a new e-mail addressed to exactly the right person.

This is a great way to help users send you e-mail with comments and requests.

An e-mail link uses the standard anchor element and an href attribute. The value of the href attribute is the target e-mail address, prefaced with mailto:.

<p>Send us your
  <a href="mailto:[email protected]">comments</a>.</p>

The user’s browser configuration controls how the browser handles an e-mail link. Most browsers follow these two basic steps automatically:

  1. Open a new message window in the default e-mail program.

  2. Insert the address from the href attribute into the To field of the message.

Unfortunately, web page mailto: links are a prime source of e-mail addresses for spammers. Creating a form to receive feedback is often a better idea; better still, use JavaScript encryption on the e-mail address. (For more info, see Steven Chapman’s great article “Hiding Your Email Address” on

One safe way to provide an e-mail addresses is in the form: ed at edtittel dot com, knowing that people are smart enough to substitute @ for at and . for dot, and also knowing that address-harvesters usually aren’t that canny.

If you elect to use a form instead, be aware that this too can present security issues — always be sure to check your input, or take steps to avoid so-called SQL injection attacks. For more info, see Colin Mackay’s article “SQL Injection Attacks and Some Tips on How to Prevent Them” on the Code Project website.

About This Article

This article is from the book:

About the book authors:

Ed Tittel is a 30-year veteran of the technology industry with more than 140 computing books to his credit, including the bestselling HTML For Dummies.

Chris Minnick runs Minnick Web Services. He teaches, speaks, and consults on web-related topics and has contributed to numerous books, including WebKit For Dummies.

This article can be found in the category: