layer at (0,0) size 785x2283
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x2283
  RenderBlock {HTML} at (0,0) size 785x2283
    RenderBody {BODY} at (8,8) size 769x2267 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 769x20
        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 769x96
        RenderText {#text} at (0,0) size 376x96
          text run at (0,0) width 360: ".zero {background-color: silver; padding: 0;}"
          text run at (360,0) width 0: " "
          text run at (0,16) width 368: ".one {padding: 0.5in; background-color: aqua;}"
          text run at (368,16) width 0: " "
          text run at (0,32) width 360: ".two {padding: 25px; background-color: aqua;}"
          text run at (360,32) width 0: " "
          text run at (0,48) width 368: ".three {padding: 5em; background-color: aqua;}"
          text run at (368,48) width 0: " "
          text run at (0,64) width 360: ".four {padding: 25%; background-color: aqua;}"
          text run at (360,64) width 0: " "
          text run at (0,80) width 376: ".five {padding: -20px; background-color: aqua;}"
          text run at (376,80) width 0: " "
      RenderBlock {HR} at (0,145) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,163) size 769x20 [bgcolor=#C0C0C0]
        RenderText {#text} at (0,0) size 193x19
          text run at (0,0) width 193: "This element has a class of zero."
      RenderBlock {P} at (0,199) size 769x136 [bgcolor=#00FFFF]
        RenderText {#text} at (48,48) size 653x39
          text run at (48,48) width 624: "This element should have an overall padding of half an inch, which will require extra text in order to test. "
          text run at (672,48) width 29: "Both"
          text run at (48,68) width 408: "the content background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,351) size 769x90 [bgcolor=#00FFFF]
        RenderText {#text} at (25,25) size 710x39
          text run at (25,25) width 611: "This element should have an overall padding of 25 pixels, which will require extra text in order to test. "
          text run at (636,25) width 99: "Both the content"
          text run at (25,45) width 338: "background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,457) size 769x200 [bgcolor=#00FFFF]
        RenderText {#text} at (80,80) size 583x39
          text run at (80,80) width 583: "This element should have an overall padding of 5 em, which will require extra text in order to test."
          text run at (80,100) width 441: "Both the content background and the padding should be aqua (light blue)."
      RenderBlock {P} at (0,673) size 769x465 [bgcolor=#00FFFF]
        RenderText {#text} at (192,192) size 380x80
          text run at (192,192) width 370: "This element should have an overall padding of 25%, which is"
          text run at (192,212) width 351: "calculated with respect to the width of the parent element. "
          text run at (542,212) width 30: "Both"
          text run at (192,232) width 371: "the content background and the padding should be aqua (light"
          text run at (192,252) width 35: "blue)."
      RenderBlock {P} at (0,1153) size 769x41 [bgcolor=#00FFFF]
        RenderText {#text} at (0,0) size 733x39
          text run at (0,0) width 510: "This element should have no padding, since negative padding values are not allowed. "
          text run at (510,0) width 223: "Both the content background and the"
          text run at (0,20) width 259: "normal padding should be aqua (light blue)."
      RenderTable {TABLE} at (0,1209) size 769x1058 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x1056
          RenderTableRow {TR} at (0,0) size 767x28
            RenderTableCell {TD} at (0,0) size 767x28 [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 767x1028
            RenderTableCell {TD} at (0,527) size 12x29 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,3) size 4x21
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,28) size 755x1028 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x20 [bgcolor=#C0C0C0]
                RenderText {#text} at (0,0) size 193x19
                  text run at (0,0) width 193: "This element has a class of zero."
              RenderBlock {P} at (4,40) size 747x136 [bgcolor=#00FFFF]
                RenderText {#text} at (48,48) size 620x39
                  text run at (48,48) width 620: "This element should have an overall padding of half an inch, which will require extra text in order to test."
                  text run at (48,68) width 441: "Both the content background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,192) size 747x90 [bgcolor=#00FFFF]
                RenderText {#text} at (25,25) size 662x39
                  text run at (25,25) width 611: "This element should have an overall padding of 25 pixels, which will require extra text in order to test. "
                  text run at (636,25) width 51: "Both the"
                  text run at (25,45) width 386: "content background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,298) size 747x200 [bgcolor=#00FFFF]
                RenderText {#text} at (80,80) size 583x39
                  text run at (80,80) width 583: "This element should have an overall padding of 5 em, which will require extra text in order to test."
                  text run at (80,100) width 441: "Both the content background and the padding should be aqua (light blue)."
              RenderBlock {P} at (4,514) size 747x454 [bgcolor=#00FFFF]
                RenderText {#text} at (186,186) size 371x80
                  text run at (186,186) width 370: "This element should have an overall padding of 25%, which is"
                  text run at (186,206) width 347: "calculated with respect to the width of the parent element."
                  text run at (186,226) width 371: "Both the content background and the padding should be aqua"
                  text run at (186,246) width 68: "(light blue)."
              RenderBlock {P} at (4,983) size 747x41 [bgcolor=#00FFFF]
                RenderText {#text} at (0,0) size 733x39
                  text run at (0,0) width 510: "This element should have no padding, since negative padding values are not allowed. "
                  text run at (510,0) width 223: "Both the content background and the"
                  text run at (0,20) width 259: "normal padding should be aqua (light blue)."
