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 (0,15) width 414: ".one {padding-bottom: 0.5in; background-color: aqua;}"
          text run at (0,30) width 406: ".two {padding-bottom: 25px; background-color: aqua;}"
          text run at (0,45) width 414: ".three {padding-bottom: 5em; background-color: aqua;}"
          text run at (0,60) width 406: ".four {padding-bottom: 25%; background-color: aqua;}"
          text run at (0,75) width 422: ".five {padding-bottom: -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 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)."
