layer at (0,0) size 785x859
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x859
  RenderBlock {HTML} at (0,0) size 785x859
    RenderBody {BODY} at (8,8) size 769x843 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 769x18
        RenderText {#text} at (0,0) size 363x18
          text run at (0,0) width 363: "The style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,34) size 769x90
        RenderText {#text} at (0,0) size 437x90
          text run at (0,0) width 430: ".zero {background-color: silver; border-left-width: 0;}"
          text run at (429,0) width 1: " "
          text run at (0,15) width 406: ".one {border-left-width: 50px; border-style: solid;}"
          text run at (405,15) width 1: " "
          text run at (0,30) width 414: ".two {border-left-width: thick; border-style: solid;}"
          text run at (413,30) width 1: " "
          text run at (0,45) width 437: ".three {border-left-width: medium; border-style: solid;}"
          text run at (436,45) width 1: " "
          text run at (0,60) width 414: ".four {border-left-width: thin; border-style: solid;}"
          text run at (413,60) width 1: " "
          text run at (0,75) width 250: ".five {border-left-width: 25px;}"
          text run at (249,75) width 1: " "
      RenderBlock {HR} at (0,137) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,155) size 769x18
        RenderText {#text} at (0,0) size 160x18
          text run at (0,0) width 160: "(These will only work if "
        RenderInline {CODE} at (0,0) size 95x15
          RenderText {#text} at (159,2) size 95x15
            text run at (159,2) width 95: "border-style"
        RenderText {#text} at (253,0) size 92x18
          text run at (253,0) width 92: " is supported.)"
      RenderBlock {P} at (0,189) size 769x18 [bgcolor=#C0C0C0]
        RenderText {#text} at (0,0) size 208x18
          text run at (0,0) width 208: "This element has a class of zero."
      RenderBlock {P} at (0,223) size 769x42 [border: (3px solid #000000) (50px solid #000000)]
        RenderText {#text} at (50,3) size 697x36
          text run at (50,3) width 697: "This element should have a left border width of 50 pixels, which will be more obvious if the element is more"
          text run at (50,21) width 120: "than one line long."
      RenderBlock {P} at (0,281) size 769x42 [border: (3px solid #000000) (5px solid #000000)]
        RenderText {#text} at (5,3) size 740x36
          text run at (5,3) width 740: "This element should have a thick left border width, which will be more obvious if the element is more than one line"
          text run at (5,21) width 33: "long."
      RenderBlock {P} at (0,339) size 769x42 [border: (3px solid #000000)]
        RenderText {#text} at (3,3) size 760x36
          text run at (3,3) width 760: "This element should have a medium left border width, which will be more obvious if the element is more than one line"
          text run at (3,21) width 33: "long."
      RenderBlock {P} at (0,397) size 769x42 [border: (3px solid #000000) (1px solid #000000)]
        RenderText {#text} at (1,3) size 733x36
          text run at (1,3) width 733: "This element should have a thin left border width, which will be more obvious if the element is more than one line"
          text run at (1,21) width 33: "long."
      RenderBlock {P} at (0,455) size 769x18
        RenderText {#text} at (0,0) size 521x18
          text run at (0,0) width 521: "This element should have no border and no extra \"padding\" on its left side, as no "
        RenderInline {CODE} at (0,0) size 95x15
          RenderText {#text} at (520,2) size 95x15
            text run at (520,2) width 95: "border-style"
        RenderText {#text} at (614,0) size 56x18
          text run at (614,0) width 56: " was set."
      RenderTable {TABLE} at (0,489) size 769x354 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x352
          RenderTableRow {TR} at (0,0) size 767x26
            RenderTableCell {TD} at (0,0) size 767x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 161x18
                RenderText {#text} at (4,4) size 161x18
                  text run at (4,4) width 161: "TABLE Testing Section"
          RenderTableRow {TR} at (0,26) size 767x326
            RenderTableCell {TD} at (0,176) size 12x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x18
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,26) size 755x326 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x18
                RenderText {#text} at (0,0) size 160x18
                  text run at (0,0) width 160: "(These will only work if "
                RenderInline {CODE} at (0,0) size 95x15
                  RenderText {#text} at (159,2) size 95x15
                    text run at (159,2) width 95: "border-style"
                RenderText {#text} at (253,0) size 92x18
                  text run at (253,0) width 92: " is supported.)"
              RenderBlock {P} at (4,38) size 747x18 [bgcolor=#C0C0C0]
                RenderText {#text} at (0,0) size 208x18
                  text run at (0,0) width 208: "This element has a class of zero."
              RenderBlock {P} at (4,72) size 747x42 [border: (3px solid #000000) (50px solid #000000)]
                RenderText {#text} at (50,3) size 660x36
                  text run at (50,3) width 660: "This element should have a left border width of 50 pixels, which will be more obvious if the element is"
                  text run at (50,21) width 156: "more than one line long."
              RenderBlock {P} at (4,130) size 747x42 [border: (3px solid #000000) (5px solid #000000)]
                RenderText {#text} at (5,3) size 712x36
                  text run at (5,3) width 712: "This element should have a thick left border width, which will be more obvious if the element is more than one"
                  text run at (5,21) width 61: "line long."
              RenderBlock {P} at (4,188) size 747x42 [border: (3px solid #000000)]
                RenderText {#text} at (3,3) size 732x36
                  text run at (3,3) width 732: "This element should have a medium left border width, which will be more obvious if the element is more than one"
                  text run at (3,21) width 61: "line long."
              RenderBlock {P} at (4,246) size 747x42 [border: (3px solid #000000) (1px solid #000000)]
                RenderText {#text} at (1,3) size 733x36
                  text run at (1,3) width 733: "This element should have a thin left border width, which will be more obvious if the element is more than one line"
                  text run at (1,21) width 33: "long."
              RenderBlock {P} at (4,304) size 747x18
                RenderText {#text} at (0,0) size 521x18
                  text run at (0,0) width 521: "This element should have no border and no extra \"padding\" on its left side, as no "
                RenderInline {CODE} at (0,0) size 95x15
                  RenderText {#text} at (520,2) size 95x15
                    text run at (520,2) width 95: "border-style"
                RenderText {#text} at (614,0) size 56x18
                  text run at (614,0) width 56: " was set."
