In many hosting platforms, CMS products and alike, it's not always possible that you can (or at least have permission) to create server side code to perform text resizing. The usual way to acheive this is to write out a different CSS based on the users preferences.

In this example, I shall show how this can be done without having to generate server side code, instead, just using JavaScript (see pre-requisites below).

First of all, you need to generate a JavaScript file (say FontSize.js) with the following contents:

// ###########################
// created by: Ben Weeks
// Created Date: 24th March 2008
// Company: webtechy.co.uk
//
// Modified By:
// Modified Date:
// Modified Comment:
//
// Modified By:
// Modified Date:
// Modified Comment:
//
// Modified By:
// Modified Date:
// Modified Comment:
//
// Version: 1.0
// ###########################
checkCurrentFontSize();
function ChangeFontSize(iFontSize)
{
 try{
  if (iFontSize < 2 && iFontSize > 0)
  {
   document.body.style.fontSize = "0.8em";
   eraseCookie("FontSizeValue");
   createCookie("FontSizeValue","1","30");
  }
  if (iFontSize < 3 && iFontSize > 1)
  {
   document.body.style.fontSize = "1em";
   eraseCookie("FontSizeValue");
   createCookie("FontSizeValue","2","30");
  }
  if (iFontSize < 4 && iFontSize > 2)
  {
   document.body.style.fontSize = "1.2em";
   eraseCookie("FontSizeValue");
   createCookie("FontSizeValue","3","30");
  }
 }
 catch(er)
 {
  // Oh well, it didn't work out - better luck next time.
 }
}
function checkCurrentFontSize() // Checks the cookie to see if we need to resize.
{
 var iFontSize  = parseInt(readCookie("FontSizeValue"));
 if (iFontSize > 0 && iFontSize < 4)
 {
  ChangeFontSize(iFontSize);
 }
}
function createCookie(name,value,days) {
 if (days) {
  var date = new Date();
  date.setTime(date.getTime()+(days*24*60*60*1000));
  var expires = "; expires="+date.toGMTString();
 }
 else var expires = "";
 document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
 var nameEQ = name + "=";
 var ca = document.cookie.split(';');
 for(var i=0;i < ca.length;i++) {
  var c = ca[i];
  while (c.charAt(0)==' ') c = c.substring(1,c.length);
  if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
 }
 return null;
}
function eraseCookie(name) {
 createCookie(name,"",-1);
}

For more information on the cookie functions, see:

http://www.quirksmode.org/js/cookies.html

And in the header of your page put (this assumes the JS file is in the same directory as your page):

<script language="javascript" src="FontSize.js"></script>

Then, in your page content, insert:

<div class="AAA">
<a href="javascript:ChangeFontSize(1)" style="font-size:0.7em" title="Small font">A</a>
<a href="javascript:ChangeFontSize(2)" style="font-size:1em" title="Medium font">A</a>
<a href="javascript:ChangeFontSize(3)" style="font-size:0.7em" title="Large font">A</a>
</div>

This code works by re-rendering the page by redefining a base font size for your body element.

The pre-requisites for this to work are:

# You define a base font size in your CSS for the body, say 1em, then resize all subsequent elements in EM (well, a relative size, rather than a fixed size format such as PT or PX) from the body.
# The client must have JavaScript enabled
# The client must accept cookies from your domain

I hope you find this useful!