The "base" and "vlink" tags both belong in the "start_html" method when you're using CGI.pm. There is no "body" function per se in CGI.pm, so by typing it the module is assuming you know what you're doing and pretends it's a valid tag. Your "body" function doesn't "enclose" anything, so CGI.pm makes the perfectly valid guess that "body" is a self-closing tag like "break
" and puts the closing slash within the tag per XHTML 1.0 guidelines. You're getting similar problems with "base" which should also be an attribute of start_html, and not it's own function/method.
Try this instead: (untested)
print header,
start_html (-title => 'Welcome to 0.0.0.0!',
Link ({-rel => 'stylesheet', type => 'text/css', href =>
+ 'style.css'}),
base => 'http://0.0.0.0/cgi-bin/dir/',
vlink => "Black");
For more info check out the "start_html" docs in the
CGI.pm POD.
Gary Blackburn
Trained Killer