Valid framesets

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • CMAR

    Valid framesets

    I have been trying to validate a frameset document with either the HTML 4.01
    or XHTML Transitional DOCTYPE.

    But I am finding that various <frameset> attributes ( framespacing="0 ",
    border="0", frameborder="0" ) are not valid, presumably because they are IE
    proprietary.

    Is there a valid way to do these, particulary to get no borders, or does
    one just ignore the validation, since IE is so predominant?

    Thanks for your help, CMA






  • Beauregard T. Shagnasty

    #2
    Re: Valid framesets

    Quoth the raven named CMAR:
    [color=blue]
    > I have been trying to validate a frameset document with either the HTML 4.01
    > or XHTML Transitional DOCTYPE.
    >
    > But I am finding that various <frameset> attributes ( framespacing="0 ",
    > border="0", frameborder="0" ) are not valid, presumably because they are IE
    > proprietary.
    >
    > Is there a valid way to do these, particulary to get no borders, or does
    > one just ignore the validation, since IE is so predominant?[/color]

    Use a frameset DOCTYPE.


    Or... please explain why you need frames at all?

    --
    -bts
    -This space intentionally left blank.

    Comment

    • Steve Pugh

      #3
      Re: Valid framesets

      "CMAR" <cma6j@yahoo.co m> wrote:
      [color=blue]
      >I have been trying to validate a frameset document with either the HTML 4.01
      >or XHTML Transitional DOCTYPE.[/color]

      Not possible. You should be using the Frameset doctype.
      [color=blue]
      >But I am finding that various <frameset> attributes ( framespacing="0 ",
      >border="0", frameborder="0" ) are not valid, presumably because they are IE
      >proprietary.[/color]

      framespacing is IE proprietary. border and frameborder are Netscape
      proprietary.

      At least originally (IE3 and NN2 era). Now various browsers support
      various different combinations.
      [color=blue]
      > Is there a valid way to do these, particulary to get no borders, or does
      >one just ignore the validation, since IE is so predominant?[/color]

      The valid way is to specify frameborder="0" on the frame (not
      frameset) element. This will validate but won't work in the majority
      of browsers.

      So you have serveral options:

      1. Don't use frames.
      2. Use frames but allow the default border to exist.
      3. Use frames, specify frameborder="0" on the frames, and accept that
      many browsers will display the border anyway.
      4. Use frames, use invalid code to suppress the border.
      5. Write your own frameset DTD, validate against that.

      Number 1 is the preferred option. The problems with frames really
      outweigh the varying issues with optiona 2 - 5 so there isn't really
      much to choose between them.

      Steve

      --
      "My theories appal you, my heresies outrage you,
      I never answer letters and you don't like my tie." - The Doctor

      Steve Pugh <steve@pugh.net > <http://steve.pugh.net/>

      Comment

      • David Dorward

        #4
        Re: Valid framesets

        CMAR wrote:
        [color=blue]
        > I have been trying to validate a frameset document[/color]

        Oh. Dear.


        [color=blue]
        > with either the HTML 4.01 or XHTML Transitional DOCTYPE.[/color]

        Try the Frameset DTD instead.


        [color=blue]
        > But I am finding that various <frameset> attributes ( framespacing="0 ",
        > border="0", frameborder="0" ) are not valid, presumably because they are IE
        > proprietary.[/color]

        Yes
        [color=blue]
        > Is there a valid way to do these, particulary to get no borders, or[/color]

        No, not that works in browsers anyway
        [color=blue]
        > does one just ignore the validation, since IE is so predominant?[/color]

        No, generally one either lives with borders or doesn't use frames in the
        first place. The latter usually.

        --
        David Dorward <http://blog.dorward.me .uk/> <http://dorward.me.uk/>

        Comment

        • Jukka K. Korpela

          #5
          Re: Valid framesets

          "CMAR" <cma6j@yahoo.co m> wrote:
          [color=blue]
          > I have been trying to validate a frameset document with either the
          > HTML 4.01 or XHTML Transitional DOCTYPE.[/color]

          Impossible. You need to use a Frameset DTD.
          [color=blue]
          > But I am finding that various <frameset> attributes (
          > framespacing="0 ", border="0", frameborder="0" ) are not valid,
          > presumably because they are IE proprietary.[/color]

          The frameset element itself isn't valid except by a Frameset DTD.
          [color=blue]
          > Is there a valid way to do these, particulary to get no borders,
          > or does
          > one just ignore the validation, since IE is so predominant?[/color]

          As the FAQ says, either you use valid markup, or you accept the borders
          (which are _good_ since they reduce the harm caused by frames, making the
          situation clearer to users).

          Oh, and stop using frames - this will save you from this minor headache,
          and users from frustration.

          --
          Yucca, http://www.cs.tut.fi/~jkorpela/
          Pages about Web authoring: http://www.cs.tut.fi/~jkorpela/www.html

          Comment

          • Shawn K. Quinn

            #6
            Re: Valid framesets

            CMAR wrote:
            [color=blue]
            > I have been trying to validate a frameset document with either the HTML
            > 4.01 or XHTML Transitional DOCTYPE.
            >
            > But I am finding that various <frameset> attributes ( framespacing="0 ",
            > border="0", frameborder="0" ) are not valid, presumably because they are IE
            > proprietary.[/color]

            Framesets are obsolete. XHTML 1.1 does not have them, thus it is a really
            bad idea to make new documents that depend on them.
            [color=blue]
            > Is there a valid way to do these, particulary to get no borders, or
            > does
            > one just ignore the validation, since IE is so predominant?[/color]

            Definitely not the latter. Technically, invalid or badly-formed XHTML is not
            supposed to render *at all*.

            --
            Shawn K. Quinn

            Comment

            • Spartanicus

              #7
              Re: Valid framesets

              "Shawn K. Quinn" <skquinn@xeviou s.kicks-ass.net> wrote:
              [color=blue]
              >Technically, invalid or badly-formed XHTML is not
              >supposed to render *at all*.[/color]

              Nonsense, there is only a requirement to throw a parser error when
              encountering malformed html (not invalid), and only if the xhtml is
              served as xhtml.

              --
              Spartanicus

              Comment

              • CMAR

                #8
                Re: Valid framesets

                Thanks to the extremely useful replies from Steve, David and the others.

                I can't think of an alternative to frames to achieve the effect I need: a
                left-hand fixed menu, while the main body on the right scrolls down.

                I can't figure out how to use tables to do it.

                And IE does not support the CSS {position: fixed}, so I regretfully am
                stuck with #4.

                Thanks, Steve, for making so clear the options available.

                Cheers, CMA


                Comment

                • CMAR

                  #9
                  Re: Valid framesets

                  David,
                  I really appreciated your innovative ideas for dealing with the lack of
                  CSS {position:fixed } support in IE.
                  Since there really is no other viable solution to this problem, I was
                  considering trying to implement your solution for IE >= 5.0
                  Complete cruft-free demos:
                  1.. fixed vertical bar for IE >= 5
                  Two questions:
                  Have you actually implemented this online?
                  If so, what response have you gotten from various users?

                  Thanks in advance, CMA


                  Comment

                  • David Dorward

                    #10
                    Re: Valid framesets

                    CMAR wrote:
                    [color=blue]
                    > I really appreciated your innovative ideas for dealing with the lack of
                    > CSS {position:fixed } support in IE.[/color]

                    They aren't my ideas - thats why the domain changes when you follow the
                    link.
                    [color=blue]
                    > Have you actually implemented this online?[/color]

                    No, I prefer navbars to move with the page content - users expect it.

                    --
                    David Dorward <http://blog.dorward.me .uk/> <http://dorward.me.uk/>

                    Comment

                    Working...