layer at (0,0) size 785x1550
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1550
  RenderBlock {HTML} at (0,0) size 785x1550
    RenderBody {BODY} at (8,8) size 769x1534 [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 422x90
          text run at (0,0) width 406: ".zero {background-color: silver; padding-bottom: 0;}"
          text run at (405,0) width 1: " "
          text run at (0,15) width 414: ".one {padding-bottom: 0.5in; background-color: aqua;}"
          text run at (413,15) width 1: " "
          text run at (0,30) width 406: ".two {padding-bottom: 25px; background-color: aqua;}"
          text run at (405,30) width 1: " "
          text run at (0,45) width 414: ".three {padding-bottom: 5em; background-color: aqua;}"
          text run at (413,45) width 1: " "
          text run at (0,60) width 406: ".four {padding-bottom: 25%; background-color: aqua;}"
          text run at (405,60) width 1: " "
          text run at (0,75) width 422: ".five {padding-bottom: -20px; background-color: aqua;}"
          text run at (421,75) width 1: " "
      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 769x84 [bgcolor=#00FFFF]
        RenderText {#text} at (0,0) size 726x36
          text run at (0,0) width 671: "This element should have a bottom padding of half an inch, which will require extra text in order to test. "
          text run at (670,0) width 56: "Both the"
          text run at (0,18) width 413: "content background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,289) size 769x61 [bgcolor=#00FFFF]
        RenderText {#text} at (0,0) size 760x36
          text run at (0,0) width 654: "This element should have a bottom padding of 25 pixels, which will require extra text in order to test. "
          text run at (653,0) width 107: "Both the content"
          text run at (0,18) width 362: "background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,366) size 769x116 [bgcolor=#00FFFF]
        RenderText {#text} at (0,0) size 733x36
          text run at (0,0) width 627: "This element should have a bottom padding of 5 em, which will require extra text in order to test. "
          text run at (626,0) width 107: "Both the content"
          text run at (0,18) width 362: "background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,498) size 769x229 [bgcolor=#00FFFF]
        RenderText {#text} at (0,0) size 767x36
          text run at (0,0) width 767: "This element should have a bottom padding of 25%, which is calculated with respect to the width of the parent element."
          text run at (0,18) width 276: "This will require extra text in order to test. "
          text run at (275,18) width 472: "Both the content background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,742) size 769x19 [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,776) size 769x37 [bgcolor=#00FFFF]
        RenderText {#text} at (0,0) size 705x36
          text run at (0,0) width 599: "This element should have no bottom padding, since negative padding values are not allowed. "
          text run at (598,0) width 107: "Both the content"
          text run at (0,18) width 411: "background and the normal padding should be aqua (light blue)."
      RenderTable {TABLE} at (0,828) size 769x706 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x704
          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 767x678
            RenderTableCell {TD} at (0,351) 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 755x678 [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 747x84 [bgcolor=#00FFFF]
                RenderText {#text} at (0,0) size 726x36
                  text run at (0,0) width 671: "This element should have a bottom padding of half an inch, which will require extra text in order to test. "
                  text run at (670,0) width 56: "Both the"
                  text run at (0,18) width 413: "content background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,138) size 747x61 [bgcolor=#00FFFF]
                RenderText {#text} at (0,0) size 709x36
                  text run at (0,0) width 654: "This element should have a bottom padding of 25 pixels, which will require extra text in order to test. "
                  text run at (653,0) width 56: "Both the"
                  text run at (0,18) width 413: "content background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,215) size 747x116 [bgcolor=#00FFFF]
                RenderText {#text} at (0,0) size 733x36
                  text run at (0,0) width 627: "This element should have a bottom padding of 5 em, which will require extra text in order to test. "
                  text run at (626,0) width 107: "Both the content"
                  text run at (0,18) width 362: "background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,347) size 747x241 [bgcolor=#00FFFF]
                RenderText {#text} at (0,0) size 726x54
                  text run at (0,0) width 709: "This element should have a bottom padding of 25%, which is calculated with respect to the width of the parent"
                  text run at (0,18) width 59: "element. "
                  text run at (58,18) width 277: "This will require extra text in order to test. "
                  text run at (334,18) width 392: "Both the content background and the padding should be aqua"
                  text run at (0,36) width 76: "(light blue)."
              RenderBlock {P} at (4,603) size 747x19 [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,637) size 747x37 [bgcolor=#00FFFF]
                RenderText {#text} at (0,0) size 705x36
                  text run at (0,0) width 599: "This element should have no bottom padding, since negative padding values are not allowed. "
                  text run at (598,0) width 107: "Both the content"
                  text run at (0,18) width 411: "background and the normal padding should be aqua (light blue)."
