layer at (0,0) size 785x1151
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1151
  RenderBlock {HTML} at (0,0) size 785x1151
    RenderBody {BODY} at (8,8) size 769x1135 [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 769x120
        RenderText {#text} at (0,0) size 453x120
          text run at (0,0) width 266: ".one {text-decoration: underline;}"
          text run at (265,0) width 1: " "
          text run at (0,15) width 258: ".two {text-decoration: overline;}"
          text run at (257,15) width 1: " "
          text run at (0,30) width 305: ".three {text-decoration: line-through;}"
          text run at (304,30) width 1: " "
          text run at (0,45) width 242: ".four {text-decoration: blink;}"
          text run at (241,45) width 1: " "
          text run at (0,60) width 242: "B.five {text-decoration: none;}"
          text run at (241,60) width 1: " "
          text run at (0,75) width 336: ".six {text-decoration: underline overline;}"
          text run at (335,75) width 1: " "
          text run at (0,90) width 453: ".seven {text-decoration: underline overline line-through;}"
          text run at (452,90) width 1: " "
          text run at (0,105) width 0: " "
      RenderBlock {HR} at (0,167) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,185) size 769x18
        RenderText {#text} at (0,0) size 230x18
          text run at (0,0) width 230: "This sentence should be underlined."
      RenderBlock {P} at (0,219) size 769x18
        RenderText {#text} at (0,0) size 222x18
          text run at (0,0) width 222: "This sentence should be overlined."
      RenderBlock {P} at (0,253) size 769x18
        RenderText {#text} at (0,0) size 344x18
          text run at (0,0) width 344: "This sentence should have stricken text (linethrough)."
      RenderBlock {P} at (0,287) size 769x18
        RenderText {#text} at (0,0) size 602x18
          text run at (0,0) width 215: "This element should be blinking. "
          text run at (214,0) width 388: "(It is not required, however, that UAs support this behavior.)"
      RenderBlock {P} at (0,321) size 769x36
        RenderText {#text} at (0,0) size 520x18
          text run at (0,0) width 298: "The text in this element should be underlined. "
          text run at (297,0) width 223: "The boldfaced text in this element "
        RenderInline {B} at (0,0) size 176x18
          RenderText {#text} at (519,0) size 176x18
            text run at (519,0) width 176: "should also be underlined"
        RenderText {#text} at (694,0) size 746x36
          text run at (694,0) width 9: ". "
          text run at (702,0) width 44: "This is"
          text run at (0,18) width 731: "because the parent's underline will 'span' the boldfaced text, even if the inline element has no underline of its own."
      RenderBlock {P} at (0,373) size 769x18
        RenderText {#text} at (0,0) size 322x18
          text run at (0,0) width 322: "This sentence should be underlined and overlined."
      RenderBlock {P} at (0,407) size 769x18
        RenderText {#text} at (0,0) size 384x18
          text run at (0,0) width 384: "This sentence should be underlined, overlined, and stricken."
      RenderBlock {P} at (0,441) size 769x0
      RenderBlock {P} at (0,441) size 769x36
        RenderText {#text} at (0,0) size 741x36
          text run at (0,0) width 741: "There should be nothing visible between this sentence and the one above (there is an empty paragraph element with"
          text run at (0,18) width 99: "class of seven)."
      RenderBlock {P} at (0,493) size 769x55
        RenderText {#text} at (0,0) size 647x18
          text run at (0,0) width 647: "Text decorations only apply to the text of an element, so the image at the end of this sentence should "
        RenderInline {EM} at (0,0) size 21x18
          RenderText {#text} at (646,0) size 21x18
            text run at (646,0) width 21: "not"
        RenderText {#text} at (666,0) size 93x18
          text run at (666,0) width 93: " be overlined: "
        RenderImage {IMG} at (0,18) size 15x15
        RenderText {#text} at (15,19) size 766x36
          text run at (15,19) width 8: ". "
          text run at (23,19) width 743: "The underline of the parent element should hold true beneath the image, however, since text-decoration 'spans' child"
          text run at (0,37) width 61: "elements."
      RenderBlock {P} at (0,564) size 769x18 [color=#008000]
        RenderText {#text} at (0,0) size 107x18
          text run at (0,0) width 107: "The underlining "
        RenderInline {SPAN} at (0,0) size 100x18 [color=#0000FF]
          RenderText {#text} at (106,0) size 100x18
            text run at (106,0) width 100: "in this sentence"
        RenderText {#text} at (205,0) size 238x18
          text run at (205,0) width 238: " should be green, no matter what the "
        RenderInline {SPAN} at (0,0) size 112x18 [color=#000000]
          RenderText {#text} at (442,0) size 112x18
            text run at (442,0) width 112: "text color may be"
        RenderText {#text} at (553,0) size 5x18
          text run at (553,0) width 5: "."
      RenderBlock {P} at (0,598) size 769x36
        RenderText {#text} at (0,0) size 113x18
          text run at (0,0) width 113: "The colors of the "
        RenderInline {SPAN} at (0,0) size 75x18 [color=#800080]
          RenderText {#text} at (112,0) size 75x18
            text run at (112,0) width 75: "underlining"
        RenderText {#text} at (186,0) size 22x18
          text run at (186,0) width 22: " in "
        RenderInline {SPAN} at (0,0) size 83x18 [color=#0000FF]
          RenderText {#text} at (207,0) size 83x18
            text run at (207,0) width 83: "this sentence"
        RenderText {#text} at (289,0) size 71x18
          text run at (289,0) width 71: " should be "
        RenderInline {SPAN} at (0,0) size 215x18 [color=#808080]
          RenderText {#text} at (359,0) size 215x18
            text run at (359,0) width 215: "the same as that of the parent text"
        RenderText {#text} at (573,0) size 755x36
          text run at (573,0) width 182: " (that is, the first word in the"
          text run at (0,18) width 216: "sentence, which should be black)."
      RenderTable {TABLE} at (0,650) size 769x485 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x483
          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 767x457
            RenderTableCell {TD} at (0,241) 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 755x457 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x18
                RenderText {#text} at (0,0) size 230x18
                  text run at (0,0) width 230: "This sentence should be underlined."
              RenderBlock {P} at (4,38) size 747x18
                RenderText {#text} at (0,0) size 222x18
                  text run at (0,0) width 222: "This sentence should be overlined."
              RenderBlock {P} at (4,72) size 747x18
                RenderText {#text} at (0,0) size 344x18
                  text run at (0,0) width 344: "This sentence should have stricken text (linethrough)."
              RenderBlock {P} at (4,106) size 747x18
                RenderText {#text} at (0,0) size 602x18
                  text run at (0,0) width 215: "This element should be blinking. "
                  text run at (214,0) width 388: "(It is not required, however, that UAs support this behavior.)"
              RenderBlock {P} at (4,140) size 747x36
                RenderText {#text} at (0,0) size 520x18
                  text run at (0,0) width 298: "The text in this element should be underlined. "
                  text run at (297,0) width 223: "The boldfaced text in this element "
                RenderInline {B} at (0,0) size 176x18
                  RenderText {#text} at (519,0) size 176x18
                    text run at (519,0) width 176: "should also be underlined"
                RenderText {#text} at (694,0) size 746x36
                  text run at (694,0) width 9: ". "
                  text run at (702,0) width 44: "This is"
                  text run at (0,18) width 731: "because the parent's underline will 'span' the boldfaced text, even if the inline element has no underline of its own."
              RenderBlock {P} at (4,192) size 747x18
                RenderText {#text} at (0,0) size 322x18
                  text run at (0,0) width 322: "This sentence should be underlined and overlined."
              RenderBlock {P} at (4,226) size 747x18
                RenderText {#text} at (0,0) size 384x18
                  text run at (0,0) width 384: "This sentence should be underlined, overlined, and stricken."
              RenderBlock {P} at (4,260) size 747x0
              RenderBlock {P} at (4,260) size 747x36
                RenderText {#text} at (0,0) size 741x36
                  text run at (0,0) width 741: "There should be nothing visible between this sentence and the one above (there is an empty paragraph element with"
                  text run at (0,18) width 99: "class of seven)."
              RenderBlock {P} at (4,312) size 747x55
                RenderText {#text} at (0,0) size 647x18
                  text run at (0,0) width 647: "Text decorations only apply to the text of an element, so the image at the end of this sentence should "
                RenderInline {EM} at (0,0) size 21x18
                  RenderText {#text} at (646,0) size 21x18
                    text run at (646,0) width 21: "not"
                RenderText {#text} at (666,0) size 686x37
                  text run at (666,0) width 20: " be"
                  text run at (0,19) width 69: "overlined: "
                RenderImage {IMG} at (68,18) size 16x15
                RenderText {#text} at (83,19) size 686x36
                  text run at (83,19) width 9: ". "
                  text run at (91,19) width 595: "The underline of the parent element should hold true beneath the image, however, since text-"
                  text run at (0,37) width 214: "decoration 'spans' child elements."
              RenderBlock {P} at (4,383) size 747x18 [color=#008000]
                RenderText {#text} at (0,0) size 107x18
                  text run at (0,0) width 107: "The underlining "
                RenderInline {SPAN} at (0,0) size 100x18 [color=#0000FF]
                  RenderText {#text} at (106,0) size 100x18
                    text run at (106,0) width 100: "in this sentence"
                RenderText {#text} at (205,0) size 238x18
                  text run at (205,0) width 238: " should be green, no matter what the "
                RenderInline {SPAN} at (0,0) size 112x18 [color=#000000]
                  RenderText {#text} at (442,0) size 112x18
                    text run at (442,0) width 112: "text color may be"
                RenderText {#text} at (553,0) size 5x18
                  text run at (553,0) width 5: "."
              RenderBlock {P} at (4,417) size 747x36
                RenderText {#text} at (0,0) size 113x18
                  text run at (0,0) width 113: "The colors of the "
                RenderInline {SPAN} at (0,0) size 75x18 [color=#800080]
                  RenderText {#text} at (112,0) size 75x18
                    text run at (112,0) width 75: "underlining"
                RenderText {#text} at (186,0) size 22x18
                  text run at (186,0) width 22: " in "
                RenderInline {SPAN} at (0,0) size 83x18 [color=#0000FF]
                  RenderText {#text} at (207,0) size 83x18
                    text run at (207,0) width 83: "this sentence"
                RenderText {#text} at (289,0) size 71x18
                  text run at (289,0) width 71: " should be "
                RenderInline {SPAN} at (0,0) size 215x18 [color=#808080]
                  RenderText {#text} at (359,0) size 215x18
                    text run at (359,0) width 215: "the same as that of the parent text"
                RenderText {#text} at (573,0) size 732x36
                  text run at (573,0) width 159: " (that is, the first word in"
                  text run at (0,18) width 240: "the sentence, which should be black)."
