layer at (0,0) size 785x2619
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x2619
  RenderBlock {HTML} at (0,0) size 785x2619
    RenderBody {BODY} at (8,8) size 769x2603 [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 769x210
        RenderText {#text} at (0,0) size 391x210
          text run at (0,0) width 336: ".one {line-height: 0.5in; font-size: 12px;}"
          text run at (335,0) width 1: " "
          text run at (0,15) width 320: ".two {line-height: 2cm; font-size: 12px;}"
          text run at (319,15) width 1: " "
          text run at (0,30) width 344: ".three {line-height: 20mm; font-size: 12px;}"
          text run at (343,30) width 1: " "
          text run at (0,45) width 336: ".four {line-height: 24pt; font-size: 12px;}"
          text run at (335,45) width 1: " "
          text run at (0,60) width 328: ".five {line-height: 2pc; font-size: 12px;}"
          text run at (327,60) width 1: " "
          text run at (0,75) width 320: ".six {line-height: 2em; font-size: 12px;}"
          text run at (319,75) width 1: " "
          text run at (0,90) width 336: ".seven {line-height: 3ex; font-size: 12px;}"
          text run at (335,90) width 1: " "
          text run at (0,105) width 344: ".eight {line-height: 200%; font-size: 12px;}"
          text run at (343,105) width 1: " "
          text run at (0,120) width 313: ".nine {line-height: 2; font-size: 12px;}"
          text run at (312,120) width 1: " "
          text run at (0,135) width 328: ".ten {line-height: 50px; font-size: 12px;}"
          text run at (327,135) width 1: " "
          text run at (0,150) width 352: ".eleven {line-height: -1em; font-size: 12px;}"
          text run at (351,150) width 1: " "
          text run at (0,165) width 391: "TABLE .ten {line-height: normal; font-size: 12px;}"
          text run at (390,165) width 1: " "
          text run at (0,180) width 242: "DIV {background-color: silver;}"
          text run at (241,180) width 1: " "
          text run at (0,195) width 297: "SPAN.color {background-color: silver;}"
          text run at (296,195) width 1: " "
      RenderBlock {HR} at (0,257) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,271) size 769x48
        RenderText {#text} at (0,17) size 519x14
          text run at (0,17) width 519: "This sentence should have a line-height of half an inch, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,331) size 769x75
        RenderText {#text} at (0,30) size 538x14
          text run at (0,30) width 538: "This sentence should have a line-height of two centimeters, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,418) size 769x75
        RenderText {#text} at (0,30) size 552x14
          text run at (0,30) width 552: "This sentence should have a line-height of twenty millimeters, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,505) size 769x32
        RenderText {#text} at (0,9) size 551x14
          text run at (0,9) width 551: "This sentence should have a line-height of twenty-four points, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,549) size 769x32
        RenderText {#text} at (0,9) size 508x14
          text run at (0,9) width 508: "This sentence should have a line-height of two picas, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,593) size 769x24
        RenderText {#text} at (0,5) size 498x14
          text run at (0,5) width 498: "This sentence should have a line-height of two em, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,629) size 769x16
        RenderText {#text} at (0,1) size 500x14
          text run at (0,1) width 500: "This sentence should have a line-height of three ex, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,657) size 769x24
        RenderText {#text} at (0,5) size 550x14
          text run at (0,5) width 550: "This sentence should have a line-height of twice the font size, which should cause extra spacing between the lines."
      RenderBlock {DIV} at (0,693) size 769x168 [bgcolor=#C0C0C0]
        RenderBlock (anonymous) at (0,0) size 769x24
          RenderText {#text} at (0,5) size 603x14
            text run at (0,5) width 603: "This first part of the DIV should have a line-height of twice the font size, which should cause extra spacing between the lines."
        RenderBlock {P} at (0,48) size 769x72
          RenderText {#text} at (0,-2) size 754x76
            text run at (0,-2) width 742: "This sentence should have a line-height of twice the DIV's font size, or 28px;"
            text run at (0,22) width 754: "this should not cause extra spacing between the lines, since the line-height and"
            text run at (0,46) width 360: "font-size should have the same value."
        RenderBlock (anonymous) at (0,144) size 769x24
          RenderText {#text} at (0,5) size 618x14
            text run at (0,5) width 618: "This second part of the DIV should have a line-height of twice the font size, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,873) size 769x24
        RenderText {#text} at (0,5) size 550x14
          text run at (0,5) width 550: "This sentence should have a line-height of twice the font size, which should cause extra spacing between the lines."
      RenderBlock {DIV} at (0,909) size 769x240 [bgcolor=#C0C0C0]
        RenderBlock (anonymous) at (0,0) size 769x24
          RenderText {#text} at (0,5) size 603x14
            text run at (0,5) width 603: "This first part of the DIV should have a line-height of twice the font size, which should cause extra spacing between the lines."
        RenderBlock {P} at (0,48) size 769x144
          RenderText {#text} at (0,10) size 742x124
            text run at (0,10) width 742: "This sentence should have a line-height of twice the font size, which is 200%"
            text run at (0,58) width 734: "normal thanks to an inline style; this should cause extra spacing between the"
            text run at (0,106) width 647: "lines, as the font-size will be 28px and the line-height will be 56px."
        RenderBlock (anonymous) at (0,216) size 769x24
          RenderText {#text} at (0,5) size 618x14
            text run at (0,5) width 618: "This second part of the DIV should have a line-height of twice the font size, which should cause extra spacing between the lines."
      RenderBlock {P} at (0,1161) size 769x100
        RenderText {#text} at (0,18) size 760x64
          text run at (0,18) width 604: "This paragraph should have a line-height of 50 pixels in the first section, which should cause extra spacing between the lines. "
          text run at (603,18) width 157: "In the second section (within the"
          text run at (0,68) width 186: "table) its line-height should be normal."
      RenderBlock {P} at (0,1273) size 769x14
        RenderText {#text} at (0,0) size 517x14
          text run at (0,0) width 517: "This sentence should have a normal line-height, because negative values are not permitted for this property."
      RenderBlock {P} at (0,1299) size 769x150
        RenderInline {SPAN} at (0,0) size 759x89 [bgcolor=#C0C0C0]
          RenderText {#text} at (0,30) size 759x89
            text run at (0,30) width 759: "This sentence should have a line-height of two centimeters, which should cause extra spacing between the lines. The text has a background color of silver, but"
            text run at (0,105) width 693: "no padding or border. The background color has been set on an inline element and should therefore only cover the text, not the interline spacing."
        RenderText {#text} at (0,0) size 0x0
      RenderTable {TABLE} at (0,1461) size 769x1142 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x1140
          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 767x1114
            RenderTableCell {TD} at (0,570) size 12x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x18
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,26) size 755x1114 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x48
                RenderText {#text} at (0,17) size 519x14
                  text run at (0,17) width 519: "This sentence should have a line-height of half an inch, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,64) size 747x75
                RenderText {#text} at (0,30) size 538x14
                  text run at (0,30) width 538: "This sentence should have a line-height of two centimeters, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,151) size 747x75
                RenderText {#text} at (0,30) size 552x14
                  text run at (0,30) width 552: "This sentence should have a line-height of twenty millimeters, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,238) size 747x32
                RenderText {#text} at (0,9) size 551x14
                  text run at (0,9) width 551: "This sentence should have a line-height of twenty-four points, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,282) size 747x32
                RenderText {#text} at (0,9) size 508x14
                  text run at (0,9) width 508: "This sentence should have a line-height of two picas, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,326) size 747x24
                RenderText {#text} at (0,5) size 498x14
                  text run at (0,5) width 498: "This sentence should have a line-height of two em, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,362) size 747x16
                RenderText {#text} at (0,1) size 500x14
                  text run at (0,1) width 500: "This sentence should have a line-height of three ex, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,390) size 747x24
                RenderText {#text} at (0,5) size 550x14
                  text run at (0,5) width 550: "This sentence should have a line-height of twice the font size, which should cause extra spacing between the lines."
              RenderBlock {DIV} at (4,426) size 747x168 [bgcolor=#C0C0C0]
                RenderBlock (anonymous) at (0,0) size 747x24
                  RenderText {#text} at (0,5) size 603x14
                    text run at (0,5) width 603: "This first part of the DIV should have a line-height of twice the font size, which should cause extra spacing between the lines."
                RenderBlock {P} at (0,48) size 747x72
                  RenderText {#text} at (0,-2) size 742x76
                    text run at (0,-2) width 742: "This sentence should have a line-height of twice the DIV's font size, or 28px;"
                    text run at (0,22) width 714: "this should not cause extra spacing between the lines, since the line-height"
                    text run at (0,46) width 401: "and font-size should have the same value."
                RenderBlock (anonymous) at (0,144) size 747x24
                  RenderText {#text} at (0,5) size 618x14
                    text run at (0,5) width 618: "This second part of the DIV should have a line-height of twice the font size, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,606) size 747x24
                RenderText {#text} at (0,5) size 550x14
                  text run at (0,5) width 550: "This sentence should have a line-height of twice the font size, which should cause extra spacing between the lines."
              RenderBlock {DIV} at (4,642) size 747x240 [bgcolor=#C0C0C0]
                RenderBlock (anonymous) at (0,0) size 747x24
                  RenderText {#text} at (0,5) size 603x14
                    text run at (0,5) width 603: "This first part of the DIV should have a line-height of twice the font size, which should cause extra spacing between the lines."
                RenderBlock {P} at (0,48) size 747x144
                  RenderText {#text} at (0,10) size 742x124
                    text run at (0,10) width 742: "This sentence should have a line-height of twice the font size, which is 200%"
                    text run at (0,58) width 734: "normal thanks to an inline style; this should cause extra spacing between the"
                    text run at (0,106) width 647: "lines, as the font-size will be 28px and the line-height will be 56px."
                RenderBlock (anonymous) at (0,216) size 747x24
                  RenderText {#text} at (0,5) size 618x14
                    text run at (0,5) width 618: "This second part of the DIV should have a line-height of twice the font size, which should cause extra spacing between the lines."
              RenderBlock {P} at (4,894) size 747x28
                RenderText {#text} at (0,0) size 743x28
                  text run at (0,0) width 604: "This paragraph should have a line-height of 50 pixels in the first section, which should cause extra spacing between the lines. "
                  text run at (603,0) width 140: "In the second section (within"
                  text run at (0,14) width 204: "the table) its line-height should be normal."
              RenderBlock {P} at (4,934) size 747x14
                RenderText {#text} at (0,0) size 517x14
                  text run at (0,0) width 517: "This sentence should have a normal line-height, because negative values are not permitted for this property."
              RenderBlock {P} at (4,960) size 747x150
                RenderInline {SPAN} at (0,0) size 741x89 [bgcolor=#C0C0C0]
                  RenderText {#text} at (0,30) size 741x89
                    text run at (0,30) width 741: "This sentence should have a line-height of two centimeters, which should cause extra spacing between the lines. The text has a background color of silver,"
                    text run at (0,105) width 712: "but no padding or border. The background color has been set on an inline element and should therefore only cover the text, not the interline spacing."
                RenderText {#text} at (0,0) size 0x0
