layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderBlock {HTML} at (0,0) size 800x600
    RenderBody {BODY} at (8,8) size 784x584 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 784x20
        RenderText {#text} at (0,0) size 337x19
          text run at (0,0) width 337: "The style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,36) size 784x48
        RenderText {#text} at (0,0) size 568x48
          text run at (0,0) width 560: ".one {border-style: dashed; border-color: black; border-width: thick;}"
          text run at (560,0) width 0: " "
          text run at (0,16) width 544: ".two {border-style: groove; border-color: red; border-width: thick;}"
          text run at (544,16) width 0: " "
          text run at (0,32) width 568: ".three {border-style: none; border-color: purple; border-width: thick;}"
          text run at (568,32) width 0: " "
      RenderBlock {HR} at (0,97) size 784x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,115) size 784x60 [bgcolor=#C0C0C0]
        RenderText {#text} at (0,0) size 627x19
          text run at (0,0) width 627: "This is an unstyled element, save for the background color, and it contains inline elements with classes of "
        RenderInline {SPAN} at (0,0) size 65x29 [border: (5px dashed #000000)]
          RenderText {#text} at (632,0) size 55x19
            text run at (632,0) width 55: "class one"
        RenderText {#text} at (692,0) size 759x39
          text run at (692,0) width 67: ", which will"
          text run at (0,20) width 227: "result in a dashed thick black border; "
        RenderInline {SPAN} at (0,0) size 66x29 [border: (5px groove #FF0000)]
          RenderText {#text} at (232,20) size 56x19
            text run at (232,20) width 56: "class two"
        RenderText {#text} at (293,20) size 355x19
          text run at (293,20) width 355: ", which should result in a grooved thick purple border, and "
        RenderInline {SPAN} at (0,0) size 63x19
          RenderText {#text} at (648,20) size 63x19
            text run at (648,20) width 63: "class three"
        RenderText {#text} at (711,20) size 754x39
          text run at (711,20) width 43: ", which"
          text run at (0,40) width 193: "should result in no border at all. "
          text run at (193,40) width 406: "The line-height of the parent element should not change, on any line."
      RenderTable {TABLE} at (0,191) size 784x98 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 782x96
          RenderTableRow {TR} at (0,0) size 782x28
            RenderTableCell {TD} at (0,0) size 782x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 159x19
                RenderText {#text} at (4,4) size 159x19
                  text run at (4,4) width 159: "TABLE Testing Section"
          RenderTableRow {TR} at (0,28) size 782x68
            RenderTableCell {TD} at (0,48) size 12x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x19
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,28) size 770x68 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 762x60 [bgcolor=#C0C0C0]
                RenderText {#text} at (0,0) size 627x19
                  text run at (0,0) width 627: "This is an unstyled element, save for the background color, and it contains inline elements with classes of "
                RenderInline {SPAN} at (0,0) size 65x29 [border: (5px dashed #000000)]
                  RenderText {#text} at (632,0) size 55x19
                    text run at (632,0) width 55: "class one"
                RenderText {#text} at (692,0) size 759x39
                  text run at (692,0) width 67: ", which will"
                  text run at (0,20) width 227: "result in a dashed thick black border; "
                RenderInline {SPAN} at (0,0) size 66x29 [border: (5px groove #FF0000)]
                  RenderText {#text} at (232,20) size 56x19
                    text run at (232,20) width 56: "class two"
                RenderText {#text} at (293,20) size 355x19
                  text run at (293,20) width 355: ", which should result in a grooved thick purple border, and "
                RenderInline {SPAN} at (0,0) size 63x19
                  RenderText {#text} at (648,20) size 63x19
                    text run at (648,20) width 63: "class three"
                RenderText {#text} at (711,20) size 754x39
                  text run at (711,20) width 43: ", which"
                  text run at (0,40) width 193: "should result in no border at all. "
                  text run at (193,40) width 406: "The line-height of the parent element should not change, on any line."
