Ovid has asked for the wisdom of the Perl Monks concerning the following question:
From perldoc CGI
By default, CGI.pm versions 2.69 and higher emit XHTML (http://www.w3.org/TR/xhtml1/). The -no_xhtml pragma disables this feature. Thanks to Michalis Kabrianis <kabrianis@hellug.gr> for this feature.I am using CGI.pm version 2.74.
Here's the program:
Here's the output:#!/usr/bin/perl -wT use strict; use CGI::Pretty qw( :standard ); print header, start_html( -title => 'Password Check', -BGCOLOR => 'navy', -text => 'white' ), h1( 'It worked' ), hr(), br(), end_html;
According to the w3c spec (see section 4.6, "Empty Elements):Content-Type: text/html; charset=ISO-8859-1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US"><head><title>P +assword Check</title> </head><body text="white" bgcolor="navy"> <h1> It worked </h1> <hr><br></body></html>
Empty elements must either have an end tag or the start tag must end with />. For instance, <br/> or <hr></hr>.Unfortunately, the hr and br tags output by the CGI.pm HTML functions aren't valid XHTML. Is this a bug or is it a feature of transitional XHTML? Do others have this issue?
Cheers,
Ovid
Join the Perlmonks Setiathome Group or just click on the the link and check out our stats.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: CGI.pm and XHTML
by mirod (Canon) on Mar 28, 2001 at 17:16 UTC | |
by Ovid (Cardinal) on Mar 28, 2001 at 17:59 UTC | |
by kal (Hermit) on Mar 28, 2001 at 17:47 UTC | |
Re: CGI.pm and XHTML
by j.a.p.h. (Pilgrim) on Mar 28, 2001 at 18:31 UTC | |
Re: CGI.pm and XHTML
by little (Curate) on Mar 29, 2001 at 02:07 UTC |
Back to
Seekers of Perl Wisdom