layer at (0,0) size 785x2221
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x2221
  RenderBlock {HTML} at (0,0) size 785x2221
    RenderBody {BODY} at (8,8) size 769x2205 [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 367x90
          text run at (0,0) width 352: ".zero {background-color: silver; padding: 0;}"
          text run at (0,15) width 359: ".one {padding: 0.5in; background-color: aqua;}"
          text run at (0,30) width 352: ".two {padding: 25px; background-color: aqua;}"
          text run at (0,45) width 359: ".three {padding: 5em; background-color: aqua;}"
          text run at (0,60) width 352: ".four {padding: 25%; background-color: aqua;}"
          text run at (0,75) width 367: ".five {padding: -20px; background-color: aqua;}"
      RenderBlock {HR} at (0,137) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,155) 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,189) size 769x132 [bgcolor=#00FFFF]
        RenderText {#text} at (48,48) size 644x36
          text run at (48,48) width 644: "This element should have an overall padding of half an inch, which will require extra text in order to"
          text run at (48,66) width 31: "test. "
          text run at (78,66) width 472: "Both the content background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,337) size 769x86 [bgcolor=#00FFFF]
        RenderText {#text} at (25,25) size 716x36
          text run at (25,25) width 661: "This element should have an overall padding of 25 pixels, which will require extra text in order to test. "
          text run at (685,25) width 56: "Both the"
          text run at (25,43) width 413: "content background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,439) size 769x196 [bgcolor=#00FFFF]
        RenderText {#text} at (80,80) size 600x36
          text run at (80,80) width 600: "This element should have an overall padding of 5 em, which will require extra text in order to"
          text run at (80,98) width 31: "test. "
          text run at (110,98) width 472: "Both the content background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,651) size 769x457 [bgcolor=#00FFFF]
        RenderText {#text} at (192,192) size 370x72
          text run at (192,192) width 342: "This element should have an overall padding of 25%,"
          text run at (192,210) width 370: "which is calculated with respect to the width of the parent"
          text run at (192,228) width 59: "element. "
          text run at (250,228) width 293: "Both the content background and the padding"
          text run at (192,246) width 176: "should be aqua (light blue)."
      RenderBlock {P} at (0,1123) size 769x37 [bgcolor=#00FFFF]
        RenderText {#text} at (0,0) size 763x36
          text run at (0,0) width 550: "This element should have no padding, since negative padding values are not allowed. "
          text run at (549,0) width 214: "Both the content background and"
          text run at (0,18) width 304: "the normal padding should be aqua (light blue)."
      RenderTable {TABLE} at (0,1175) size 769x1030 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x1028
          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 767x1002
            RenderTableCell {TD} at (0,513) size 12x27 [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,5) width 4: " "
            RenderTableCell {TD} at (12,26) size 755x1002 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) 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,38) size 747x132 [bgcolor=#00FFFF]
                RenderText {#text} at (48,48) size 644x36
                  text run at (48,48) width 644: "This element should have an overall padding of half an inch, which will require extra text in order to"
                  text run at (48,66) width 31: "test. "
                  text run at (78,66) width 472: "Both the content background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,186) size 747x86 [bgcolor=#00FFFF]
                RenderText {#text} at (25,25) size 692x36
                  text run at (25,25) width 661: "This element should have an overall padding of 25 pixels, which will require extra text in order to test. "
                  text run at (685,25) width 32: "Both"
                  text run at (25,43) width 436: "the content background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,288) size 747x196 [bgcolor=#00FFFF]
                RenderText {#text} at (80,80) size 584x36
                  text run at (80,80) width 584: "This element should have an overall padding of 5 em, which will require extra text in order"
                  text run at (80,98) width 47: "to test. "
                  text run at (126,98) width 472: "Both the content background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,500) size 747x446 [bgcolor=#00FFFF]
                RenderText {#text} at (186,187) size 371x72
                  text run at (186,187) width 343: "This element should have an overall padding of 25%,"
                  text run at (186,205) width 371: "which is calculated with respect to the width of the parent"
                  text run at (186,223) width 60: "element. "
                  text run at (245,223) width 292: "Both the content background and the padding"
                  text run at (186,241) width 177: "should be aqua (light blue)."
              RenderBlock {P} at (4,961) size 747x37 [bgcolor=#00FFFF]
                RenderText {#text} at (0,0) size 735x36
                  text run at (0,0) width 550: "This element should have no padding, since negative padding values are not allowed. "
                  text run at (549,0) width 186: "Both the content background"
                  text run at (0,18) width 332: "and the normal padding should be aqua (light blue)."
