layer at (0,0) size 800x2270
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x2270
  RenderBlock {HTML} at (0,0) size 800x2270
    RenderBody {BODY} at (8,16) size 784x2206 [bgcolor=#FFFFFF]
      RenderBlock {P} at (0,0) size 784x20
        RenderText {#text} at (0,0) size 168x19
          text run at (0,0) width 168: "This page is part of the "
        RenderInline {A} at (0,0) size 73x19 [color=#0000EE]
          RenderText {#text} at (167,0) size 73x19
            text run at (167,0) width 73: "CSS3.info"
        RenderText {#text} at (239,0) size 5x19
          text run at (239,0) width 5: " "
        RenderInline {A} at (0,0) size 133x19 [color=#0000EE]
          RenderText {#text} at (243,0) size 133x19
            text run at (243,0) width 133: "CSS selectors test"
        RenderText {#text} at (375,0) size 136x19
          text run at (375,0) width 136: ". See more info on "
        RenderInline {A} at (0,0) size 111x19 [color=#0000EE]
          RenderText {#text} at (510,0) size 111x19
            text run at (510,0) width 111: "CSS3 selectors"
        RenderText {#text} at (620,0) size 6x19
          text run at (620,0) width 6: "."
      RenderBlock {DIV} at (0,36) size 784x0 [bgcolor=#009900]
      RenderBlock {OL} at (0,36) size 784x2170
        RenderListItem {LI} at (40,0) size 628x244 [bgcolor=#AAAAAA]
          RenderBlock {DIV} at (16,16) size 596x24 [bgcolor=#990000]
            RenderBlock {DIV} at (0,0) size 596x24 [bgcolor=#009900]
          RenderBlock {PRE} at (16,53) size 596x103 [bgcolor=#FFFFFF]
            RenderListMarker at (-39,6) size 18x20: "1"
            RenderText {#text} at (6,11) size 134x86
              text run at (6,11) width 134: "div :last-child {"
              text run at (139,11) width 1: " "
              text run at (6,26) width 9: "}"
              text run at (14,26) width 1: " "
              text run at (6,40) width 1: " "
              text run at (6,54) width 40: "<div>"
              text run at (45,54) width 1: " "
              text run at (6,68) width 110: "   <div></div>"
              text run at (115,68) width 1: " "
              text run at (6,82) width 48: "</div>"
          RenderBlock {P} at (16,172) size 596x40
            RenderText {#text} at (0,0) size 592x39
              text run at (0,0) width 592: "The CSS selector should match the inner div element, because it is the only child of"
              text run at (0,20) width 150: "the outer div element"
        RenderListItem {LI} at (40,292) size 628x258 [bgcolor=#AAAAAA]
          RenderBlock {DIV} at (16,16) size 596x24 [bgcolor=#990000]
            RenderBlock {BLOCKQUOTE} at (0,0) size 596x0
            RenderBlock {DIV} at (0,0) size 596x24 [bgcolor=#009900]
          RenderBlock {PRE} at (16,53) size 596x117 [bgcolor=#FFFFFF]
            RenderListMarker at (-39,6) size 18x20: "2"
            RenderText {#text} at (6,11) size 219x100
              text run at (6,11) width 134: "div :last-child {"
              text run at (139,11) width 1: " "
              text run at (6,26) width 9: "}"
              text run at (14,26) width 1: " "
              text run at (6,40) width 1: " "
              text run at (6,54) width 48: "<div> "
              text run at (53,54) width 1: " "
              text run at (6,68) width 219: "   <blockquote></blockquote>"
              text run at (224,68) width 1: " "
              text run at (6,82) width 110: "   <div></div>"
              text run at (115,82) width 1: " "
              text run at (6,96) width 48: "</div>"
          RenderBlock {P} at (16,186) size 596x40
            RenderText {#text} at (0,0) size 587x39
              text run at (0,0) width 587: "The CSS selector should match the inner div element, because it is the last child of"
              text run at (0,20) width 150: "the outer div element"
        RenderListItem {LI} at (40,598) size 628x278 [bgcolor=#AAAAAA]
          RenderBlock {DIV} at (16,16) size 596x24 [bgcolor=#990000]
            RenderBlock {DIV} at (0,0) size 596x24 [bgcolor=#009900]
          RenderBlock {PRE} at (16,53) size 596x117 [bgcolor=#FFFFFF]
            RenderListMarker at (-39,6) size 18x20: "3"
            RenderText {#text} at (6,11) size 204x100
              text run at (6,11) width 134: "div :last-child {"
              text run at (139,11) width 1: " "
              text run at (6,26) width 9: "}"
              text run at (14,26) width 1: " "
              text run at (6,40) width 1: " "
              text run at (6,54) width 48: "<div> "
              text run at (53,54) width 1: " "
              text run at (6,68) width 110: "   <div></div>"
              text run at (115,68) width 1: " "
              text run at (6,82) width 204: "   <!-- Just a comment -->"
              text run at (209,82) width 1: " "
              text run at (6,96) width 48: "</div>"
          RenderBlock {P} at (16,186) size 596x60
            RenderText {#text} at (0,0) size 587x59
              text run at (0,0) width 587: "The CSS selector should match the inner div element, because it is the last child of"
              text run at (0,20) width 154: "the outer div element "
              text run at (153,20) width 363: "Comments are not elements, so they should not be"
              text run at (0,40) width 307: "considered when determining the last child."
        RenderListItem {LI} at (40,924) size 628x292 [bgcolor=#AAAAAA]
          RenderBlock {DIV} at (16,16) size 596x44 [bgcolor=#990000]
            RenderBlock {DIV} at (0,0) size 596x24 [bgcolor=#009900]
            RenderBlock (anonymous) at (0,24) size 596x20
              RenderListMarker at (-39,0) size 18x19: "4"
              RenderText {#text} at (0,0) size 5x19
                text run at (0,0) width 5: "."
          RenderBlock {PRE} at (16,73) size 596x111 [bgcolor=#FFFFFF]
            RenderText {#text} at (6,6) size 219x99
              text run at (6,6) width 134: "div :last-child {"
              text run at (139,6) width 1: " "
              text run at (6,20) width 9: "}"
              text run at (14,20) width 1: " "
              text run at (6,34) width 1: " "
              text run at (6,48) width 48: "<div> "
              text run at (53,48) width 1: " "
              text run at (6,62) width 110: "   <div></div>"
              text run at (115,62) width 1: " "
              text run at (6,76) width 219: "   How about regular text..."
              text run at (224,76) width 1: " "
              text run at (6,90) width 48: "</div>"
          RenderBlock {P} at (16,200) size 596x60
            RenderText {#text} at (0,0) size 593x59
              text run at (0,0) width 587: "The CSS selector should match the inner div element, because it is the last child of"
              text run at (0,20) width 159: "the outer div element. "
              text run at (158,20) width 435: "Regular text is not an element, so it should not be considered"
              text run at (0,40) width 225: "when determining the last child."
        RenderListItem {LI} at (40,1264) size 628x258 [bgcolor=#AAAAAA]
          RenderBlock {DIV} at (16,16) size 596x24 [bgcolor=#009900]
            RenderBlock {DIV} at (0,0) size 596x24
            RenderBlock {BLOCKQUOTE} at (0,24) size 596x0 [bgcolor=#990000]
          RenderBlock {PRE} at (16,53) size 596x117 [bgcolor=#FFFFFF]
            RenderListMarker at (-39,6) size 18x20: "5"
            RenderText {#text} at (6,11) size 219x100
              text run at (6,11) width 134: "div :last-child {"
              text run at (139,11) width 1: " "
              text run at (6,26) width 9: "}"
              text run at (14,26) width 1: " "
              text run at (6,40) width 1: " "
              text run at (6,54) width 48: "<div> "
              text run at (53,54) width 1: " "
              text run at (6,68) width 110: "   <div></div>"
              text run at (115,68) width 1: " "
              text run at (6,82) width 219: "   <blockquote></blockquote>"
              text run at (224,82) width 1: " "
              text run at (6,96) width 48: "</div>"
          RenderBlock {P} at (16,186) size 596x40
            RenderText {#text} at (0,0) size 560x39
              text run at (0,0) width 560: "The CSS selector should not match the inner div element, because it is the first"
              text run at (0,20) width 205: "child of the outer div element"
        RenderListItem {LI} at (40,1570) size 628x286 [bgcolor=#AAAAAA]
          RenderBlock {DIV} at (16,16) size 596x24 [bgcolor=#990000]
            RenderBlock {DIV} at (0,0) size 596x0
            RenderBlock {DIV} at (0,0) size 596x24 [bgcolor=#009900]
          RenderBlock {PRE} at (16,53) size 596x145 [bgcolor=#FFFFFF]
            RenderListMarker at (-39,6) size 18x20: "6"
            RenderText {#text} at (6,11) size 469x128
              text run at (6,11) width 134: "div :last-child {"
              text run at (139,11) width 1: " "
              text run at (6,26) width 9: "}"
              text run at (14,26) width 1: " "
              text run at (6,40) width 1: " "
              text run at (6,54) width 40: "<div>"
              text run at (45,54) width 1: " "
              text run at (6,68) width 243: "   <div id='insertAfter'></div>"
              text run at (248,68) width 1: " "
              text run at (6,82) width 48: "</div>"
              text run at (53,82) width 1: " "
              text run at (6,96) width 1: " "
              text run at (6,110) width 375: "var ib = document.getElementById('insertAfter');"
              text run at (380,110) width 1: " "
              text run at (6,124) width 469: "ib.parentElement.appendChild(document.createElement(\"div\"));"
          RenderBlock {P} at (16,214) size 596x40
            RenderText {#text} at (0,0) size 571x39
              text run at (0,0) width 571: "The CSS selector should match the div element that is inserted by the Javascript"
              text run at (0,20) width 40: "code."
        RenderListItem {LI} at (40,1904) size 628x266 [bgcolor=#AAAAAA]
          RenderBlock {DIV} at (16,16) size 596x24 [bgcolor=#009900]
            RenderBlock {DIV} at (0,0) size 596x24
            RenderBlock {DIV} at (0,24) size 596x0 [bgcolor=#990000]
          RenderBlock {PRE} at (16,53) size 596x145 [bgcolor=#FFFFFF]
            RenderListMarker at (-39,6) size 18x20: "7"
            RenderText {#text} at (6,11) size 469x128
              text run at (6,11) width 134: "div :last-child {"
              text run at (139,11) width 1: " "
              text run at (6,26) width 9: "}"
              text run at (14,26) width 1: " "
              text run at (6,40) width 1: " "
              text run at (6,54) width 40: "<div>"
              text run at (45,54) width 1: " "
              text run at (6,68) width 243: "   <div id='insertAfter'></div>"
              text run at (248,68) width 1: " "
              text run at (6,82) width 48: "</div>"
              text run at (53,82) width 1: " "
              text run at (6,96) width 1: " "
              text run at (6,110) width 375: "var ib = document.getElementById('insertAfter');"
              text run at (380,110) width 1: " "
              text run at (6,124) width 469: "ib.parentElement.appendChild(document.createElement(\"div\"));"
          RenderBlock {P} at (16,214) size 596x20
            RenderText {#text} at (0,0) size 518x19
              text run at (0,0) width 518: "The original div element should not be a match for the :last-child selector."
