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

Discussion in 'ASP .Net' started by Rolf Welskes, Aug 22, 2006.

  1. Rolf Welskes

    Rolf Welskes Guest

    Hello,
    if I have for example:

    <table style="width: 100%; height: 100%;" border="1">
    <tr>
    <td style="width: 100px">k
    </td>
    <td style="width: 100px">k
    </td>
    </tr>
    <tr>
    <td style="width: 100px">k
    </td>
    <td style="width: 100px">k
    </td>
    </tr>
    </table>

    and I see the page in internet explorer 6.0 then:

    if I have before:

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

    then the table in the height is not the full internet-explorer page as I
    want it.

    if I have not
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    before in the site, the table is the full internet-explorer page as I want.

    So question:
    Do I need

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

    in my aspx.-pages (asp.net 2.0) ?
    Visual studio 2005 allways includes this in aspx-files.
    The question is: When I have server controls that generate for example
    html-code for IE 6.0 does this code need, that there
    are these declarations in the aspx pages ?
    Means: If these declarations are not there can it be, that asp.net generated
    html is bad visible in browsers?

    Thank you for any help.
    Rolf Welskes
    Rolf Welskes, Aug 22, 2006
    #1
    1. Advertising

  2. 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.
    Steven Cheng[MSFT], Aug 23, 2006
    #2
    1. Advertising

  3. Rolf Welskes

    Guest

    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.
    >
    >
    >
    , Aug 23, 2006
    #3
  4. Rolf Welskes

    Rolf Welskes Guest

    Hello,
    thank you for your informations,

    but the main-question is not answered.

    if I have no doctype in my html pages,
    what is with the code that asp generates for example from server-controls?

    Means if I have a complex server control which generates html for example
    for IE6.0
    and my aspx pages have not the doctype for xhtml, is the generated code
    xhtml and can it look bad without
    the doctype declaration?

    Thank you.
    Rolf Welskes





    <> schrieb im Newsbeitrag
    news:...
    > 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.
    >>
    >>
    Rolf Welskes, Aug 23, 2006
    #4
  5. Rolf Welskes

    Guest

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

    Hi Rolf,
    The doctype instructs the web browser how to render the page.
    When you have the doctype for xhtml IE will render the page with
    standards mode, which is good since it will look (almost) the same in
    all modern browsers.
    The code that is generated from the server controls is not affected by
    the doctype, it's just an instruction for the web browser.



    Rolf Welskes wrote:
    > Hello,
    > thank you for your informations,
    >
    > but the main-question is not answered.
    >
    > if I have no doctype in my html pages,
    > what is with the code that asp generates for example from server-controls?
    >
    > Means if I have a complex server control which generates html for example
    > for IE6.0
    > and my aspx pages have not the doctype for xhtml, is the generated code
    > xhtml and can it look bad without
    > the doctype declaration?
    >
    > Thank you.
    > Rolf Welskes
    >
    >
    >
    >
    >
    > <> schrieb im Newsbeitrag
    > news:...
    >> 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.
    >>>
    >>>

    >
    , Aug 23, 2006
    #5
  6. Rolf Welskes

    gerry Guest

    i think the answer to his question is - yes
    leaving out the DTD can make the browser rendering of your html look bad



    <> wrote in message
    news:%...
    > Hi Rolf,
    > The doctype instructs the web browser how to render the page.
    > When you have the doctype for xhtml IE will render the page with
    > standards mode, which is good since it will look (almost) the same in
    > all modern browsers.
    > The code that is generated from the server controls is not affected by
    > the doctype, it's just an instruction for the web browser.
    >
    >
    >
    > Rolf Welskes wrote:
    > > Hello,
    > > thank you for your informations,
    > >
    > > but the main-question is not answered.
    > >
    > > if I have no doctype in my html pages,
    > > what is with the code that asp generates for example from

    server-controls?
    > >
    > > Means if I have a complex server control which generates html for

    example
    > > for IE6.0
    > > and my aspx pages have not the doctype for xhtml, is the generated code
    > > xhtml and can it look bad without
    > > the doctype declaration?
    > >
    > > Thank you.
    > > Rolf Welskes
    > >
    > >
    > >
    > >
    > >
    > > <> schrieb im Newsbeitrag
    > > news:...
    > >> 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.
    > >>>
    > >>>

    > >
    gerry, Aug 23, 2006
    #6
  7. Hi Rolf,

    As other members have said, the doctype will affect how the client-browser
    will render your page's html content.

    However, I don't think it will affect how the ASP.NET runtime/control
    adpater generate the html/xhtml for page/controls. This is because the
    ASP.NET page/control(actually their render adpater) will generate output
    html depending on the client-browser's useragent/capability info rather
    than the "doctype" declaration in your aspx page. Does this answer your
    question? Please feel free to post here if you have anything unclear.


    Sincerely,

    Steven Cheng

    Microsoft MSDN Online Support Lead



    This posting is provided "AS IS" with no warranties, and confers no rights.
    Steven Cheng[MSFT], Aug 24, 2006
    #7
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Charles A. Lackman
    Replies:
    1
    Views:
    1,340
    smith
    Dec 8, 2004
  2. SpamProof
    Replies:
    0
    Views:
    544
    SpamProof
    Oct 21, 2003
  3. PapaRandy
    Replies:
    2
    Views:
    351
    Circa
    Jul 11, 2006
  4. Defacta
    Replies:
    3
    Views:
    471
    Beauregard T. Shagnasty
    Dec 18, 2007
  5. Larry Lindstrom
    Replies:
    19
    Views:
    1,284
    Jonathan N. Little
    Jun 12, 2012
Loading...

Share This Page