You're putting your CSS in a place where it doesn't belong, and that's why it's not doing anything. I don't know if your monitor's wide enough to see it, but it's actually just displaying as text to the right side of the image. Your HTML should look more like this:
HTML Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Neopian Ability - We're just another graphics site</title>
<link href="cms_style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
A:link{COLOR:FAD772; TEXT-DECORATION: italic;font-size:8px cursive }
A:visited{COLOR:FAD772; TEXT-DECORATION:bold,UNDERLINE ;font-size:8px comic sans ms}
A:HOVER {COLOR:FAD772; TEXT-DECORATION:UNDERLINE;font-size:8px; space:4px comic sans ms}
body {background:url("http://i38.tinypic.com/11t50t1.jpg");}
#textbox1{ position:absolute; top: 720px; left: 220px; height: 260px; width: 440px; overflow:auto; }
#textbox2{ position:absolute; top: 730px; left: 48px; height: 250px; width: 90px; overflow:auto; }
td,p{ color:##FAD7EF; font:12px comic sans ms; letter-spacing:1px; }
h3{ color:#ECA5E8; font:15px comic sans ms; border-bottom: 6px solid #FAD7EF; border-top: 6px solid #FAD772; }
h4{ border-bottom: 4px solid #FAD7EF; border-top: 4px double #B700FF; }
</style>
</head>
<body>
<img style="position: absolute; left: 0px; top: 0px; height: 617px; width: 998px;" src="http://i33.tinypic.com/30sytxd.jpg" border="0px" alt="" />
</body>
</html>
See how I've put the CSS in a style tag in the head? That tells the browser to interpret those CSS rules and apply them to the page.
I see a couple problems with your CSS, but we'll wait until you get it working to sort those out.
--- Mr. DOS