Re: Do I need <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ..... in asp.net 2.0 ?



To get the table to fill your screen you have to set the height of the body element. The body element is only rendered as high as it needs to be.

Replace <body> with <body style="height: 100%;"> and it will work with the doctype.

One should also note that the doctype makes IE render the HTML according to standard. Without it IE will render the page in quirks mode which is pretty much guaranteed to look like crap in all other browsers.

I recommend everyone to always put a doctype in your html documents to make sure that your work looks good when rendered according to standard.

Remember this: if you don't follow standards today you can count on having to do it all over in a couple of years when your outdated IE-only html has been deprecated!
(I just rewrote an old project...)

//Mats

Steven Cheng[MSFT] wrote:
Hello Rolf,

As for the following markup fragment you mentioned:

===================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
===================

It is the XML DocType declaration of XHTML 1.0 Transitional conform document. That means if you want to make your page's ouput HTML be conform to "XHTML 1.0 Transitional" standard, you must include this declaration fragment. for example, if you remove this declaration and try validating your page's output html through the W3C xhtml validator:

http://validator.w3.org/

You will get valiation error indicate that the page is not XHTML compatible.

Of course, if you do not care about the XHTML 1.0 Transitional compatibility for all the pages in your web application, you can simply remove all these markup declaration. And so far most popular webbrowsers can correctly handle both XHTML validated or non-XHTML validated html document gracefully, you do not need to care much about this.

BTW, as for VS 2005, it by default use XHTML 1.0 Transitional as the default HTML validation rule and the default webform template is also adding this XHTML doctype declaration. You can find the template file under the following location:

C:\Program Files\Microsoft Visual Studio 8\Web\WebNewFileItems\CSharp\Webform.aspx

You can customize the template as you like if you have many web pages or application will developing without such declaration. But makesure you've backuped all the default templates.

Hope this helps.

Sincerely,

Steven Cheng

Microsoft MSDN Online Support Lead



==================================================

Get notification to my posts through email? Please refer to http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.



Note: The MSDN Managed Newsgroup support offering is for non-urgent issues where an initial response from the community or a Microsoft Support Engineer within 1 business day is acceptable. Please note that each follow up response may take approximately 2 business days as the support professional working with you may need further investigation to reach the most efficient resolution. The offering is not appropriate for situations that require urgent, real-time or phone-based interactions or complex project analysis and dump analysis issues. Issues of this nature are best handled working with a dedicated Microsoft Support Engineer by contacting Microsoft Customer Support Services (CSS) at http://msdn.microsoft.com/subscriptions/support/default.aspx.

==================================================



This posting is provided "AS IS" with no warranties, and confers no rights.



.



Relevant Pages