layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x518
  RenderBlock {HTML} at (0,0) size 800x518 [bgcolor=#FFFFFF]
layer at (173,32) size 454x454
  RenderBody {BODY} at (173,32) size 454x454 [color=#FFFFFF] [bgcolor=#DD6600]
    RenderBlock {DIV} at (0,0) size 454x0
      RenderBlock {DIV} at (0,0) size 454x0
        RenderBlock {DIV} at (0,0) size 454x0
    RenderBlock {DIV} at (0,0) size 454x0
      RenderInline {SPAN} at (0,0) size 0x0
    RenderBlock {DIV} at (0,0) size 454x0
      RenderInline {SPAN} at (0,0) size 0x0
    RenderBlock {DIV} at (0,0) size 454x0
      RenderInline {SPAN} at (0,0) size 0x0
    RenderBlock {DIV} at (0,0) size 454x0
      RenderInline {SPAN} at (0,0) size 0x0
    RenderBlock {DIV} at (0,0) size 454x0
      RenderInline {SPAN} at (0,0) size 0x0
    RenderBlock {DIV} at (0,0) size 454x0
      RenderInline {SPAN} at (0,0) size 0x0
layer at (173,47) size 454x188
  RenderBlock (positioned) {H1} at (0,15) size 454x189 [color=#DD9955]
    RenderInline {SPAN} at (0,0) size 341x190
      RenderText {#text} at (63,-1) size 341x190
        text run at (63,-1) width 327: "CSS ZEN"
        text run at (56,93) width 341: "GARDEN"
layer at (173,119) size 454x21
  RenderBlock (positioned) {H2} at (0,87) size 454x22 [color=#EEFF00]
    RenderInline {SPAN} at (0,0) size 155x19
      RenderText {#text} at (149,1) size 92x19
        text run at (149,1) width 92: "The Beauty of "
      RenderInline {ACRONYM} at (0,0) size 23x19
        RenderText {#text} at (240,1) size 23x19
          text run at (240,1) width 23: "CSS"
      RenderText {#text} at (262,1) size 42x19
        text run at (262,1) width 42: " Design"
layer at (173,351) size 454x135
  RenderBlock (positioned) {DIV} at (0,319) size 454x135
    RenderInline {P} at (0,0) size 431x29
      RenderInline {SPAN} at (0,0) size 431x29
        RenderText {#text} at (11,-1) size 431x29
          text run at (11,-1) width 431: "Littering a dark and dreary road lay the past relics of browser-"
          text run at (11,13) width 198: "specific tags, incompatible "
        RenderInline {ACRONYM} at (0,0) size 32x15
          RenderText {#text} at (208,13) size 32x15
            text run at (208,13) width 32: "DOM"
        RenderText {#text} at (239,13) size 112x15
          text run at (239,13) width 112: "s, and broken "
        RenderInline {ACRONYM} at (0,0) size 28x15
          RenderText {#text} at (350,13) size 28x15
            text run at (350,13) width 28: "CSS"
        RenderText {#text} at (377,13) size 65x15
          text run at (377,13) width 65: " support."
    RenderText {#text} at (0,0) size 0x0
    RenderInline {P} at (0,0) size 431x43
      RenderInline {SPAN} at (0,0) size 431x43
        RenderText {#text} at (11,27) size 431x43
          text run at (11,27) width 431: "Today, we must clear the mind of past practices. Web"
          text run at (11,41) width 431: "enlightenment has been achieved thanks to the tireless efforts"
          text run at (11,55) width 101: "of folk like the "
        RenderInline {ACRONYM} at (0,0) size 33x15
          RenderText {#text} at (111,55) size 33x15
            text run at (111,55) width 33: "W3C"
        RenderText {#text} at (143,55) size 9x15
          text run at (143,55) width 9: ", "
        RenderInline {ACRONYM} at (0,0) size 41x15
          RenderText {#text} at (151,55) size 41x15
            text run at (151,55) width 41: "WaSP"
        RenderText {#text} at (191,55) size 222x15
          text run at (191,55) width 222: " and the major browser creators."
    RenderText {#text} at (412,55) size 5x15
      text run at (412,55) width 5: " "
    RenderInline {P} at (0,0) size 431x71
      RenderInline {SPAN} at (0,0) size 431x71
        RenderText {#text} at (416,55) size 431x71
          text run at (416,55) width 26: "The"
          text run at (11,69) width 431: "css Zen Garden invites you to relax and meditate on the"
          text run at (11,83) width 431: "important lessons of the masters. Begin to see with clarity."
          text run at (11,97) width 431: "Learn to use the (yet to be) time-honored techniques in new"
          text run at (11,111) width 351: "and invigorating fashion. Become one with the web."
    RenderText {#text} at (0,0) size 0x0
layer at (321,234) size 307x81
  RenderBlock (positioned) {H3} at (147,-118) size 307x83 [color=#CCCC77] [bgcolor=#888811] [border: (3.77px solid #888811) none (3.77px solid #888811)]
    RenderInline {SPAN} at (0,0) size 278x83
      RenderText {#text} at (45,-1) size 278x83
        text run at (45,-1) width 231: "The Road to"
        text run at (3,36) width 278: "Enlightenment"
