Sideway
output.to from Sideway
Draft for Information Only

HTML Tag Rendering

A HTML document rendering rules for HTML5 suggested by w3.org is as following last updated 09Jan2019

Source: https://www.w3.org/TR/html5/rendering.html

  1. Non-replaced elements
    1. Hidden elements
      @namespace url(http://www.w3.org/1999/xhtml);
      
      [hidden], area, base, basefont, datalist, head, link, meta,
      noembed, noframes, param, rp, script, source, style, template, track, title {
        display: none;
      }
      
      embed[hidden] { display: inline; height: 0; width: 0; }
      
      input[type=hidden i] { display: none !important; }
      
      @media (scripting) {
        noscript { display: none !important; }
      }
    2. The page
      @namespace url(http://www.w3.org/1999/xhtml);
      
      html, body { display: block; }
    3. Flow content
      @namespace url(http://www.w3.org/1999/xhtml);
      
      address, blockquote, center, div, figure, figcaption, footer, form, header, hr,
      legend, listing, main, p, plaintext, pre, xmp {
        display: block;
      }
      
      blockquote, figure, listing, p, plaintext, pre, xmp {
        margin-block-start: 1em; margin-block-end: 1em;
      }
      
      blockquote, figure { margin-inline-start: 40px; margin-inline-end: 40px; }
      
      address { font-style: italic; }
      listing, plaintext, pre, xmp {
        font-family: monospace; white-space: pre;
      }
      
      dialog:not([open]) { display: none; }
      dialog {
        position: absolute;
        left: 0; right: 0;
        width: fit-content;
        height: fit-content;
        margin: auto;
        border: solid;
        padding: 1em;
        background: white;
        color: black;
      }
      dialog::backdrop {
        background: rgba(0,0,0,0.1);
      }
      
      /* for small devices, modal dialogs go full-screen */
      @media screen and (max-width: 540px) {
        dialog:modal {
          top: 0;
          width: auto;
          margin: 1em;
        }
      }
      
      slot {
        display: contents;
      }
      presentational hints:
      @namespace url(http://www.w3.org/1999/xhtml);
      
      pre[wrap] { white-space: pre-wrap; }
      quirks mode
      @namespace url(http://www.w3.org/1999/xhtml);
      
      form { margin-block-end: 1em; }
    4. Phrasing content
      @namespace url(http://www.w3.org/1999/xhtml);
      
      cite, dfn, em, i, var { font-style: italic; }
      b, strong { font-weight: bolder; }
      code, kbd, samp, tt { font-family: monospace; }
      big { font-size: larger; }
      small { font-size: smaller; }
      
      sub { vertical-align: sub; }
      sup { vertical-align: super; }
      sub, sup { line-height: normal; font-size: smaller; }
      
      ruby { display: ruby; }
      rt   { display: ruby-text; }
      
      :link { color: #0000EE; }
      :visited { color: #551A8B; }
      :link:active, :visited:active { color: #FF0000; }
      :link, :visited { text-decoration: underline; cursor: pointer; }
      a:link[rel~=help], a:visited[rel~=help],
      area:link[rel~=help], area:visited[rel~=help] { cursor: help; }
      
      :focus { outline: auto; }
      
      mark { background: yellow; color: black; } /* this color is just a suggestion and can be changed based on implementation feedback */
      
      abbr[title], acronym[title] { text-decoration: dotted underline; }
      ins, u { text-decoration: underline; }
      del, s, strike { text-decoration: line-through; }
      blink { text-decoration: blink; }
      
      q::before { content: open-quote; }
      q::after { content: close-quote; }
      
      br { display-outside: newline; } /* this also has bidi implications */
      nobr { white-space: nowrap; }
      wbr { display-outside: break-opportunity; } /* this also has bidi implications */
      nobr wbr { white-space: normal; }
      presentational hints:
      @namespace url(http://www.w3.org/1999/xhtml);
      
      br[clear=left i] { clear: left; }
      br[clear=right i] { clear: right; }
      br[clear=all i], br[clear=both i] { clear: both; }
    5. Bidirectional text
      @namespace url(http://www.w3.org/1999/xhtml);
      
      [dir]:dir(ltr), bdi:dir(ltr), input[type=tel i]:dir(ltr) { direction: ltr; }
      [dir]:dir(rtl), bdi:dir(rtl) { direction: rtl; }
      
      address, blockquote, center, div, figure, figcaption, footer, form, header, hr,
      legend, listing, main, p, plaintext, pre, summary, xmp, article, aside, h1, h2,
      h3, h4, h5, h6, hgroup, nav, section, table, caption, colgroup, col, thead,
      tbody, tfoot, tr, td, th, dir, dd, dl, dt, ol, ul, li, bdi, output,
      [dir=ltr i], [dir=rtl i], [dir=auto i] {
        unicode-bidi: isolate;
      }
      
      bdo, bdo[dir] { unicode-bidi: isolate-override; }
      
      input[dir=auto i]:matches([type=search i], [type=tel i], [type=url i],
      [type=email i]), textarea[dir=auto i], pre[dir=auto i] {
        unicode-bidi: plaintext;
      }
      /* see prose for input elements whose type attribute is in the Text state */
      
      /* the rules setting the 'content' property on 
      and elements also has bidi implications */
      character encoding is ISO-8859-8:
      @namespace url(http://www.w3.org/1999/xhtml);
      
      address, blockquote, center, div, figure, figcaption, footer, form, header, hr,
      legend, listing, main, p, plaintext, pre, summary, xmp, article, aside, h1, h2,
      h3, h4, h5, h6, hgroup, nav, section, table, caption, colgroup, col, thead,
      tbody, tfoot, tr, td, th, dir, dd, dl, dt, ol, ul, li, [dir=ltr i],
      [dir=rtl i], [dir=auto i], *|* {
        unicode-bidi: bidi-override;
      }
      input:not([type=submit i]):not([type=reset i]):not([type=button i]),
      textarea {
        unicode-bidi: normal;
      }
    6. Quotes
      @namespace url(http://www.w3.org/1999/xhtml);
      
      :root                                                         { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(af),       :not(:lang(af)) > :lang(af)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(agq),      :not(:lang(agq)) > :lang(agq)           { quotes: '\201e' '\201d' '\201a' '\2019' } /* „ ” ‚ ’ */
      :root:lang(ak),       :not(:lang(ak)) > :lang(ak)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(am),       :not(:lang(am)) > :lang(am)             { quotes: '\00ab' '\00bb' '\2039' '\203a' } /* « » ‹ › */
      :root:lang(ar),       :not(:lang(ar)) > :lang(ar)             { quotes: '\201d' '\201c' '\2019' '\2018' } /* ” “ ’ ‘ */
      :root:lang(asa),      :not(:lang(asa)) > :lang(asa)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ast),      :not(:lang(ast)) > :lang(ast)           { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(az),       :not(:lang(az)) > :lang(az)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(az-Cyrl),  :not(:lang(az-Cyrl)) > :lang(az-Cyrl)   { quotes: '\00ab' '\00bb' '\2039' '\203a' } /* « » ‹ › */
      :root:lang(bas),      :not(:lang(bas)) > :lang(bas)           { quotes: '\00ab' '\00bb' '\201e' '\201c' } /* « » „ “ */
      :root:lang(be),       :not(:lang(be)) > :lang(be)             { quotes: '\00ab' '\00bb' '\00ab' '\00bb' } /* « » « » */
      :root:lang(bem),      :not(:lang(bem)) > :lang(bem)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(bez),      :not(:lang(bez)) > :lang(bez)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(bg),       :not(:lang(bg)) > :lang(bg)             { quotes: '\201e' '\201c' '\201e' '\201c' } /* „ “ „ “ */
      :root:lang(bm),       :not(:lang(bm)) > :lang(bm)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(bn),       :not(:lang(bn)) > :lang(bn)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(br),       :not(:lang(br)) > :lang(br)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(brx),      :not(:lang(brx)) > :lang(brx)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(bs),       :not(:lang(bs)) > :lang(bs)             { quotes: '\201e' '\201c' '\2018' '\2019' } /* „ “ ‘ ’ */
      :root:lang(bs-Cyrl),  :not(:lang(bs-Cyrl)) > :lang(bs-Cyrl)   { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(ca),       :not(:lang(ca)) > :lang(ca)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(cgg),      :not(:lang(cgg)) > :lang(cgg)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(chr),      :not(:lang(chr)) > :lang(chr)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(cs),       :not(:lang(cs)) > :lang(cs)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(cy),       :not(:lang(cy)) > :lang(cy)             { quotes: '\2018' '\2019' '\201c' '\201d' } /* ‘ ’ “ ” */
      :root:lang(da),       :not(:lang(da)) > :lang(da)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(dav),      :not(:lang(dav)) > :lang(dav)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(de),       :not(:lang(de)) > :lang(de)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(dje),      :not(:lang(dje)) > :lang(dje)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(dsb),      :not(:lang(dsb)) > :lang(dsb)           { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(dua),      :not(:lang(dua)) > :lang(dua)           { quotes: '\00ab' '\00bb' '\2018' '\2019' } /* « » ‘ ’ */
      :root:lang(dyo),      :not(:lang(dyo)) > :lang(dyo)           { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(dz),       :not(:lang(dz)) > :lang(dz)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ebu),      :not(:lang(ebu)) > :lang(ebu)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ee),       :not(:lang(ee)) > :lang(ee)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(el),       :not(:lang(el)) > :lang(el)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(en),       :not(:lang(en)) > :lang(en)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(es),       :not(:lang(es)) > :lang(es)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(et),       :not(:lang(et)) > :lang(et)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(eu),       :not(:lang(eu)) > :lang(eu)             { quotes: '\201c' '\201d' '\201c' '\201d' } /* “ ” “ ” */
      :root:lang(ewo),      :not(:lang(ewo)) > :lang(ewo)           { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(fa),       :not(:lang(fa)) > :lang(fa)             { quotes: '\00ab' '\00bb' '\2039' '\203a' } /* « » ‹ › */
      :root:lang(ff),       :not(:lang(ff)) > :lang(ff)             { quotes: '\201e' '\201d' '\201a' '\2019' } /* „ ” ‚ ’ */
      :root:lang(fi),       :not(:lang(fi)) > :lang(fi)             { quotes: '\201d' '\201d' '\2019' '\2019' } /* ” ” ’ ’ */
      :root:lang(fil),      :not(:lang(fil)) > :lang(fil)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(fo),       :not(:lang(fo)) > :lang(fo)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(fr),       :not(:lang(fr)) > :lang(fr)             { quotes: '\00ab' '\00bb' '\00ab' '\00bb' } /* « » « » */
      :root:lang(fr-CH),    :not(:lang(fr-CH)) > :lang(fr-CH)       { quotes: '\00ab' '\00bb' '\2039' '\203a' } /* « » ‹ › */
      :root:lang(ga),       :not(:lang(ga)) > :lang(ga)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(gd),       :not(:lang(gd)) > :lang(gd)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(gl),       :not(:lang(gl)) > :lang(gl)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(gsw),      :not(:lang(gsw)) > :lang(gsw)           { quotes: '\00ab' '\00bb' '\2039' '\203a' } /* « » ‹ › */
      :root:lang(gu),       :not(:lang(gu)) > :lang(gu)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(guz),      :not(:lang(guz)) > :lang(guz)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ha),       :not(:lang(ha)) > :lang(ha)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(he),       :not(:lang(he)) > :lang(he)             { quotes: '\201d' '\201d' '\2019' '\2019' } /* ” ” ’ ’ */
      :root:lang(hi),       :not(:lang(hi)) > :lang(hi)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(hr),       :not(:lang(hr)) > :lang(hr)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(hsb),      :not(:lang(hsb)) > :lang(hsb)           { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(hu),       :not(:lang(hu)) > :lang(hu)             { quotes: '\201e' '\201d' '\00bb' '\00ab' } /* „ ” » « */
      :root:lang(hy),       :not(:lang(hy)) > :lang(hy)             { quotes: '\00ab' '\00bb' '\00ab' '\00bb' } /* « » « » */
      :root:lang(id),       :not(:lang(id)) > :lang(id)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ig),       :not(:lang(ig)) > :lang(ig)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(is),       :not(:lang(is)) > :lang(is)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(it),       :not(:lang(it)) > :lang(it)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(ja),       :not(:lang(ja)) > :lang(ja)             { quotes: '\300c' '\300d' '\300e' '\300f' } /* 「 」 『 』 */
      :root:lang(jgo),      :not(:lang(jgo)) > :lang(jgo)           { quotes: '\00ab' '\00bb' '\2039' '\203a' } /* « » ‹ › */
      :root:lang(jmc),      :not(:lang(jmc)) > :lang(jmc)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ka),       :not(:lang(ka)) > :lang(ka)             { quotes: '\201e' '\201c' '\00ab' '\00bb' } /* „ “ « » */
      :root:lang(kab),      :not(:lang(kab)) > :lang(kab)           { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(kam),      :not(:lang(kam)) > :lang(kam)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(kde),      :not(:lang(kde)) > :lang(kde)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(kea),      :not(:lang(kea)) > :lang(kea)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(khq),      :not(:lang(khq)) > :lang(khq)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ki),       :not(:lang(ki)) > :lang(ki)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(kk),       :not(:lang(kk)) > :lang(kk)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(kkj),      :not(:lang(kkj)) > :lang(kkj)           { quotes: '\00ab' '\00bb' '\2039' '\203a' } /* « » ‹ › */
      :root:lang(kln),      :not(:lang(kln)) > :lang(kln)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(km),       :not(:lang(km)) > :lang(km)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(kn),       :not(:lang(kn)) > :lang(kn)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ko),       :not(:lang(ko)) > :lang(ko)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ksb),      :not(:lang(ksb)) > :lang(ksb)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ksf),      :not(:lang(ksf)) > :lang(ksf)           { quotes: '\00ab' '\00bb' '\2018' '\2019' } /* « » ‘ ’ */
      :root:lang(ky),       :not(:lang(ky)) > :lang(ky)             { quotes: '\00ab' '\00bb' '\201e' '\201c' } /* « » „ “ */
      :root:lang(lag),      :not(:lang(lag)) > :lang(lag)           { quotes: '\201d' '\201d' '\2019' '\2019' } /* ” ” ’ ’ */
      :root:lang(lb),       :not(:lang(lb)) > :lang(lb)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(lg),       :not(:lang(lg)) > :lang(lg)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ln),       :not(:lang(ln)) > :lang(ln)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(lo),       :not(:lang(lo)) > :lang(lo)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(lrc),      :not(:lang(lrc)) > :lang(lrc)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(lt),       :not(:lang(lt)) > :lang(lt)             { quotes: '\201e' '\201c' '\201e' '\201c' } /* „ “ „ “ */
      :root:lang(lu),       :not(:lang(lu)) > :lang(lu)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(luo),      :not(:lang(luo)) > :lang(luo)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(luy),      :not(:lang(luy)) > :lang(luy)           { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(lv),       :not(:lang(lv)) > :lang(lv)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mas),      :not(:lang(mas)) > :lang(mas)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mer),      :not(:lang(mer)) > :lang(mer)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mfe),      :not(:lang(mfe)) > :lang(mfe)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mg),       :not(:lang(mg)) > :lang(mg)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(mgo),      :not(:lang(mgo)) > :lang(mgo)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mk),       :not(:lang(mk)) > :lang(mk)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(ml),       :not(:lang(ml)) > :lang(ml)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mn),       :not(:lang(mn)) > :lang(mn)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mr),       :not(:lang(mr)) > :lang(mr)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ms),       :not(:lang(ms)) > :lang(ms)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mt),       :not(:lang(mt)) > :lang(mt)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mua),      :not(:lang(mua)) > :lang(mua)           { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(my),       :not(:lang(my)) > :lang(my)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(mzn),      :not(:lang(mzn)) > :lang(mzn)           { quotes: '\00ab' '\00bb' '\2039' '\203a' } /* « » ‹ › */
      :root:lang(naq),      :not(:lang(naq)) > :lang(naq)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(nb),       :not(:lang(nb)) > :lang(nb)             { quotes: '\00ab' '\00bb' '\2018' '\2019' } /* « » ‘ ’ */
      :root:lang(nd),       :not(:lang(nd)) > :lang(nd)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ne),       :not(:lang(ne)) > :lang(ne)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(nl),       :not(:lang(nl)) > :lang(nl)             { quotes: '\2018' '\2019' '\201c' '\201d' } /* ‘ ’ “ ” */
      :root:lang(nmg),      :not(:lang(nmg)) > :lang(nmg)           { quotes: '\201e' '\201d' '\00ab' '\00bb' } /* „ ” « » */
      :root:lang(nn),       :not(:lang(nn)) > :lang(nn)             { quotes: '\00ab' '\00bb' '\2018' '\2019' } /* « » ‘ ’ */
      :root:lang(nnh),      :not(:lang(nnh)) > :lang(nnh)           { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(nus),      :not(:lang(nus)) > :lang(nus)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(nyn),      :not(:lang(nyn)) > :lang(nyn)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(pa),       :not(:lang(pa)) > :lang(pa)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(pl),       :not(:lang(pl)) > :lang(pl)             { quotes: '\201e' '\201d' '\00ab' '\00bb' } /* „ ” « » */
      :root:lang(pt),       :not(:lang(pt)) > :lang(pt)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(pt-PT),    :not(:lang(pt-PT)) > :lang(pt-PT)       { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(rn),       :not(:lang(rn)) > :lang(rn)             { quotes: '\201d' '\201d' '\2019' '\2019' } /* ” ” ’ ’ */
      :root:lang(ro),       :not(:lang(ro)) > :lang(ro)             { quotes: '\201e' '\201d' '\00ab' '\00bb' } /* „ ” « » */
      :root:lang(rof),      :not(:lang(rof)) > :lang(rof)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ru),       :not(:lang(ru)) > :lang(ru)             { quotes: '\00ab' '\00bb' '\201e' '\201c' } /* « » „ “ */
      :root:lang(rw),       :not(:lang(rw)) > :lang(rw)             { quotes: '\00ab' '\00bb' '\2018' '\2019' } /* « » ‘ ’ */
      :root:lang(rwk),      :not(:lang(rwk)) > :lang(rwk)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(saq),      :not(:lang(saq)) > :lang(saq)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(sbp),      :not(:lang(sbp)) > :lang(sbp)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(seh),      :not(:lang(seh)) > :lang(seh)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ses),      :not(:lang(ses)) > :lang(ses)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(sg),       :not(:lang(sg)) > :lang(sg)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(shi),      :not(:lang(shi)) > :lang(shi)           { quotes: '\00ab' '\00bb' '\201e' '\201d' } /* « » „ ” */
      :root:lang(shi-Latn), :not(:lang(shi-Latn)) > :lang(shi-Latn) { quotes: '\00ab' '\00bb' '\201e' '\201d' } /* « » „ ” */
      :root:lang(si),       :not(:lang(si)) > :lang(si)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(sk),       :not(:lang(sk)) > :lang(sk)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(sl),       :not(:lang(sl)) > :lang(sl)             { quotes: '\201e' '\201c' '\201a' '\2018' } /* „ “ ‚ ‘ */
      :root:lang(sn),       :not(:lang(sn)) > :lang(sn)             { quotes: '\201d' '\201d' '\2019' '\2019' } /* ” ” ’ ’ */
      :root:lang(so),       :not(:lang(so)) > :lang(so)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(sq),       :not(:lang(sq)) > :lang(sq)             { quotes: '\00ab' '\00bb' '\201c' '\201d' } /* « » “ ” */
      :root:lang(sr),       :not(:lang(sr)) > :lang(sr)             { quotes: '\201e' '\201c' '\2018' '\2018' } /* „ “ ‘ ‘ */
      :root:lang(sr-Latn),  :not(:lang(sr-Latn)) > :lang(sr-Latn)   { quotes: '\201e' '\201c' '\2018' '\2018' } /* „ “ ‘ ‘ */
      :root:lang(sv),       :not(:lang(sv)) > :lang(sv)             { quotes: '\201d' '\201d' '\2019' '\2019' } /* ” ” ’ ’ */
      :root:lang(sw),       :not(:lang(sw)) > :lang(sw)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ta),       :not(:lang(ta)) > :lang(ta)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(te),       :not(:lang(te)) > :lang(te)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(teo),      :not(:lang(teo)) > :lang(teo)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(th),       :not(:lang(th)) > :lang(th)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(ti-ER),    :not(:lang(ti-ER)) > :lang(ti-ER)       { quotes: '\2018' '\2019' '\201c' '\201d' } /* ‘ ’ “ ” */
      :root:lang(tk),       :not(:lang(tk)) > :lang(tk)             { quotes: '\201c' '\201d' '\201c' '\201d' } /* “ ” “ ” */
      :root:lang(to),       :not(:lang(to)) > :lang(to)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(tr),       :not(:lang(tr)) > :lang(tr)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(twq),      :not(:lang(twq)) > :lang(twq)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(tzm),      :not(:lang(tzm)) > :lang(tzm)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(uk),       :not(:lang(uk)) > :lang(uk)             { quotes: '\00ab' '\00bb' '\201e' '\201c' } /* « » „ “ */
      :root:lang(ur),       :not(:lang(ur)) > :lang(ur)             { quotes: '\201d' '\201c' '\2019' '\2018' } /* ” “ ’ ‘ */
      :root:lang(uz),       :not(:lang(uz)) > :lang(uz)             { quotes: '\201c' '\201d' '\2019' '\2018' } /* “ ” ’ ‘ */
      :root:lang(uz-Cyrl),  :not(:lang(uz-Cyrl)) > :lang(uz-Cyrl)   { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(vai),      :not(:lang(vai)) > :lang(vai)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(vai-Latn), :not(:lang(vai-Latn)) > :lang(vai-Latn) { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(vi),       :not(:lang(vi)) > :lang(vi)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(vun),      :not(:lang(vun)) > :lang(vun)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(xog),      :not(:lang(xog)) > :lang(xog)           { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(yav),      :not(:lang(yav)) > :lang(yav)           { quotes: '\00ab' '\00bb' '\00ab' '\00bb' } /* « » « » */
      :root:lang(yo),       :not(:lang(yo)) > :lang(yo)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(yo-BJ),    :not(:lang(yo-BJ)) > :lang(yo-BJ)       { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(yue),      :not(:lang(yue)) > :lang(yue)           { quotes: '\300c' '\300d' '\300e' '\300f' } /* 「 」 『 』 */
      :root:lang(zgh),      :not(:lang(zgh)) > :lang(zgh)           { quotes: '\00ab' '\00bb' '\201e' '\201d' } /* « » „ ” */
      :root:lang(zh),       :not(:lang(zh)) > :lang(zh)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
      :root:lang(zh-Hant),  :not(:lang(zh-Hant)) > :lang(zh-Hant)   { quotes: '\300c' '\300d' '\300e' '\300f' } /* 「 」 『 』 */
      :root:lang(zu),       :not(:lang(zu)) > :lang(zu)             { quotes: '\201c' '\201d' '\2018' '\2019' } /* “ ” ‘ ’ */
    7. Sections and headings
      @namespace url(http://www.w3.org/1999/xhtml);
      
      article, aside, h1, h2, h3, h4, h5, h6, hgroup, nav, section {
        display: block;
      }
      
      h1 { margin-block-start: 0.67em; margin-block-end: 0.67em; font-size: 2.00em; font-weight: bold; }
      h2 { margin-block-start: 0.83em; margin-block-end: 0.83em; font-size: 1.50em; font-weight: bold; }
      h3 { margin-block-start: 1.00em; margin-block-end: 1.00em; font-size: 1.17em; font-weight: bold; }
      h4 { margin-block-start: 1.33em; margin-block-end: 1.33em; font-size: 1.00em; font-weight: bold; }
      h5 { margin-block-start: 1.67em; margin-block-end: 1.67em; font-size: 0.83em; font-weight: bold; }
      h6 { margin-block-start: 2.33em; margin-block-end: 2.33em; font-size: 0.67em; font-weight: bold; }
      nested form x is shorthand for the following selector: :matches(article, aside, nav, section)
      @namespace url(http://www.w3.org/1999/xhtml);
      
      x h1 { margin-block-start: 0.83em; margin-block-end: 0.83em; font-size: 1.50em; }
      x x h1 { margin-block-start: 1.00em; margin-block-end: 1.00em; font-size: 1.17em; }
      x x x h1 { margin-block-start: 1.33em; margin-block-end: 1.33em; font-size: 1.00em; }
      x x x x h1 { margin-block-start: 1.67em; margin-block-end: 1.67em; font-size: 0.83em; }
      x x x x x h1 { margin-block-start: 2.33em; margin-block-end: 2.33em; font-size: 0.67em; }
      
      x hgroup > h1 ~ h2 { margin-block-start: 1.00em; margin-block-end: 1.00em; font-size: 1.17em; }
      x x hgroup > h1 ~ h2 { margin-block-start: 1.33em; margin-block-end: 1.33em; font-size: 1.00em; }
      x x x hgroup > h1 ~ h2 { margin-block-start: 1.67em; margin-block-end: 1.67em; font-size: 0.83em; }
      x x x x hgroup > h1 ~ h2 { margin-block-start: 2.33em; margin-block-end: 2.33em; font-size: 0.67em; }
      
      x hgroup > h1 ~ h3 { margin-block-start: 1.33em; margin-block-end: 1.33em; font-size: 1.00em; }
      x x hgroup > h1 ~ h3 { margin-block-start: 1.67em; margin-block-end: 1.67em; font-size: 0.83em; }
      x x x hgroup > h1 ~ h3 { margin-block-start: 2.33em; margin-block-end: 2.33em; font-size: 0.67em; }
      
      x hgroup > h1 ~ h4 { margin-block-start: 1.67em; margin-block-end: 1.67em; font-size: 0.83em; }
      x x hgroup > h1 ~ h4 { margin-block-start: 2.33em; margin-block-end: 2.33em; font-size: 0.67em; }
      
      x hgroup > h1 ~ h5 { margin-block-start: 2.33em; margin-block-end: 2.33em; font-size: 0.67em; }
    8. Lists
      @namespace url(http://www.w3.org/1999/xhtml);
      
      dir, dd, dl, dt, ol, ul { display: block; }
      li { display: list-item; }
      
      dir, dl, ol, ul { margin-block-start: 1em; margin-block-end: 1em; }
      
      :matches(dir, dl, ol, ul) :matches(dir, dl, ol, ul) {
        margin-block-start: 0; margin-block-end: 0;
      }
      
      dd { margin-inline-start: 40px; }
      dir, ol, ul { padding-inline-start: 40px; }
      
      ol { list-style-type: decimal; }
      
      dir, ul {
        list-style-type: disc;
      }
      :matches(dir, ol, ul) :matches(dir, ul) {
        list-style-type: circle;
      }
      :matches(dir, ol, ul) :matches(dir, ol, ul) :matches(dir, ul) {
        list-style-type: square;
      }
      presentational hints:
      @namespace url(http://www.w3.org/1999/xhtml);
      
      ol[type=1], li[type=1] { list-style-type: decimal; }
      ol[type=a], li[type=a] { list-style-type: lower-alpha; }
      ol[type=A], li[type=A] { list-style-type: upper-alpha; }
      ol[type=i], li[type=i] { list-style-type: lower-roman; }
      ol[type=I], li[type=I] { list-style-type: upper-roman; }
      ul[type=none i], li[type=none i] { list-style-type: none; }
      ul[type=disc i], li[type=disc i] { list-style-type: disc; }
      ul[type=circle i], li[type=circle i] { list-style-type: circle; }
      ul[type=square i], li[type=square i] { list-style-type: square; }
    9. Tables
      @namespace url(http://www.w3.org/1999/xhtml);
      
      table { display: table; }
      caption { display: table-caption; }
      colgroup, colgroup[hidden] { display: table-column-group; }
      col, col[hidden] { display: table-column; }
      thead, thead[hidden] { display: table-header-group; }
      tbody, tbody[hidden] { display: table-row-group; }
      tfoot, tfoot[hidden] { display: table-footer-group; }
      tr, tr[hidden] { display: table-row; }
      td, th, td[hidden], th[hidden] { display: table-cell; }
      
      colgroup[hidden], col[hidden], thead[hidden], tbody[hidden],
      tfoot[hidden], tr[hidden], td[hidden], th[hidden] {
        visibility: collapse;
      }
      
      table {
        box-sizing: border-box;
        border-spacing: 2px;
        border-collapse: separate;
        text-indent: initial;
      }
      td, th { padding: 1px; }
      th { font-weight: bold; }
      caption { text-align: center; }
      thead, tbody, tfoot, table > tr { vertical-align: middle; }
      tr, td, th { vertical-align: inherit; }
      
      table, td, th { border-color: gray; }
      thead, tbody, tfoot, tr { border-color: inherit; }
      table[rules=none i], table[rules=groups i], table[rules=rows i],
      table[rules=cols i], table[rules=all i], table[frame=void i],
      table[frame=above i], table[frame=below i], table[frame=hsides i],
      table[frame=lhs i], table[frame=rhs i], table[frame=vsides i],
      table[frame=box i], table[frame=border i],
      table[rules=none i] > tr > td, table[rules=none i] > tr > th,
      table[rules=groups i] > tr > td, table[rules=groups i] > tr > th,
      table[rules=rows i] > tr > td, table[rules=rows i] > tr > th,
      table[rules=cols i] > tr > td, table[rules=cols i] > tr > th,
      table[rules=all i] > tr > td, table[rules=all i] > tr > th,
      table[rules=none i] > thead > tr > td, table[rules=none i] > thead > tr > th,
      table[rules=groups i] > thead > tr > td, table[rules=groups i] > thead > tr > th,
      table[rules=rows i] > thead > tr > td, table[rules=rows i] > thead > tr > th,
      table[rules=cols i] > thead > tr > td, table[rules=cols i] > thead > tr > th,
      table[rules=all i] > thead > tr > td, table[rules=all i] > thead > tr > th,
      table[rules=none i] > tbody > tr > td, table[rules=none i] > tbody > tr > th,
      table[rules=groups i] > tbody > tr > td, table[rules=groups i] > tbody > tr > th,
      table[rules=rows i] > tbody > tr > td, table[rules=rows i] > tbody > tr > th,
      table[rules=cols i] > tbody > tr > td, table[rules=cols i] > tbody > tr > th,
      table[rules=all i] > tbody > tr > td, table[rules=all i] > tbody > tr > th,
      table[rules=none i] > tfoot > tr > td, table[rules=none i] > tfoot > tr > th,
      table[rules=groups i] > tfoot > tr > td, table[rules=groups i] > tfoot > tr > th,
      table[rules=rows i] > tfoot > tr > td, table[rules=rows i] > tfoot > tr > th,
      table[rules=cols i] > tfoot > tr > td, table[rules=cols i] > tfoot > tr > th,
      table[rules=all i] > tfoot > tr > td, table[rules=all i] > tfoot > tr > th {
        border-color: black;
      }
      presentational hints:
      @namespace url(http://www.w3.org/1999/xhtml);
      
      table[align=left i] { float: left; }
      table[align=right i] { float: right; }
      table[align=center i] { margin-inline-start: auto; margin-inline-end: auto; }
      thead[align=absmiddle i], tbody[align=absmiddle i], tfoot[align=absmiddle i],
      tr[align=absmiddle i], td[align=absmiddle i], th[align=absmiddle i] {
        text-align: center;
      }
      
      caption[align=bottom i] { caption-side: bottom; }
      p[align=left i], h1[align=left i], h2[align=left i], h3[align=left i],
      h4[align=left i], h5[align=left i], h6[align=left i] {
        text-align: left;
      }
      p[align=right i], h1[align=right i], h2[align=right i], h3[align=right i],
      h4[align=right i], h5[align=right i], h6[align=right i] {
        text-align: right;
      }
      p[align=center i], h1[align=center i], h2[align=center i], h3[align=center i],
      h4[align=center i], h5[align=center i], h6[align=center i] {
        text-align: center;
      }
      p[align=justify i], h1[align=justify i], h2[align=justify i], h3[align=justify i],
      h4[align=justify i], h5[align=justify i], h6[align=justify i] {
        text-align: justify;
      }
      thead[valign=top i], tbody[valign=top i], tfoot[valign=top i],
      tr[valign=top i], td[valign=top i], th[valign=top i] {
        vertical-align: top;
      }
      thead[valign=middle i], tbody[valign=middle i], tfoot[valign=middle i],
      tr[valign=middle i], td[valign=middle i], th[valign=middle i] {
        vertical-align: middle;
      }
      thead[valign=bottom i], tbody[valign=bottom i], tfoot[valign=bottom i],
      tr[valign=bottom i], td[valign=bottom i], th[valign=bottom i] {
        vertical-align: bottom;
      }
      thead[valign=baseline i], tbody[valign=baseline i], tfoot[valign=baseline i],
      tr[valign=baseline i], td[valign=baseline i], th[valign=baseline i] {
        vertical-align: baseline;
      }
      
      td[nowrap], th[nowrap] { white-space: nowrap; }
      
      table[rules=none i], table[rules=groups i], table[rules=rows i],
      table[rules=cols i], table[rules=all i] {
        border-style: hidden;
        border-collapse: collapse;
      }
      table[border] { border-style: outset; } /* only if border is not equivalent to zero */
      table[frame=void i] { border-style: hidden; }
      table[frame=above i] { border-style: outset hidden hidden hidden; }
      table[frame=below i] { border-style: hidden hidden outset hidden; }
      table[frame=hsides i] { border-style: outset hidden outset hidden; }
      table[frame=lhs i] { border-style: hidden hidden hidden outset; }
      table[frame=rhs i] { border-style: hidden outset hidden hidden; }
      table[frame=vsides i] { border-style: hidden outset; }
      table[frame=box i], table[frame=border i] { border-style: outset; }
      
      table[border] > tr > td, table[border] > tr > th,
      table[border] > thead > tr > td, table[border] > thead > tr > th,
      table[border] > tbody > tr > td, table[border] > tbody > tr > th,
      table[border] > tfoot > tr > td, table[border] > tfoot > tr > th {
        /* only if border is not equivalent to zero */
        border-width: 1px;
        border-style: inset;
      }
      table[rules=none i] > tr > td, table[rules=none i] > tr > th,
      table[rules=none i] > thead > tr > td, table[rules=none i] > thead > tr > th,
      table[rules=none i] > tbody > tr > td, table[rules=none i] > tbody > tr > th,
      table[rules=none i] > tfoot > tr > td, table[rules=none i] > tfoot > tr > th,
      table[rules=groups i] > tr > td, table[rules=groups i] > tr > th,
      table[rules=groups i] > thead > tr > td, table[rules=groups i] > thead > tr > th,
      table[rules=groups i] > tbody > tr > td, table[rules=groups i] > tbody > tr > th,
      table[rules=groups i] > tfoot > tr > td, table[rules=groups i] > tfoot > tr > th,
      table[rules=rows i] > tr > td, table[rules=rows i] > tr > th,
      table[rules=rows i] > thead > tr > td, table[rules=rows i] > thead > tr > th,
      table[rules=rows i] > tbody > tr > td, table[rules=rows i] > tbody > tr > th,
      table[rules=rows i] > tfoot > tr > td, table[rules=rows i] > tfoot > tr > th {
        border-width: 1px;
        border-style: none;
      }
      table[rules=cols i] > tr > td, table[rules=cols i] > tr > th,
      table[rules=cols i] > thead > tr > td, table[rules=cols i] > thead > tr > th,
      table[rules=cols i] > tbody > tr > td, table[rules=cols i] > tbody > tr > th,
      table[rules=cols i] > tfoot > tr > td, table[rules=cols i] > tfoot > tr > th {
        border-width: 1px;
        block-start-style: none;
        border-inline-end-style: solid;
        border-block-end-style: none;
        border-inline-start-style: solid;
      }
      table[rules=all i] > tr > td, table[rules=all i] > tr > th,
      table[rules=all i] > thead > tr > td, table[rules=all i] > thead > tr > th,
      table[rules=all i] > tbody > tr > td, table[rules=all i] > tbody > tr > th,
      table[rules=all i] > tfoot > tr > td, table[rules=all i] > tfoot > tr > th {
        border-width: 1px;
        border-style: solid;
      }
      
      table[rules=groups i] > colgroup {
        border-inline-start-width: 1px;
        border-inline-start-style: solid;
        border-inline-end-width: 1px;
        border-inline-end-style: solid;
      }
      table[rules=groups i] > thead,
      table[rules=groups i] > tbody,
      table[rules=groups i] > tfoot {
        border-block-start-width: 1px;
        border-block-start-style: solid;
        border-block-end-width: 1px;
        border-block-end-style: solid;
      }
      
      table[rules=rows i] > tr, table[rules=rows i] > thead > tr,
      table[rules=rows i] > tbody > tr, table[rules=rows i] > tfoot > tr {
        border-block-start-width: 1px;
        border-block-start-style: solid;
        border-block-end-width: 1px;
        border-block-end-style: solid;
      }
      quirks mode
      @namespace url(http://www.w3.org/1999/xhtml);
      
      table {
        font-weight: initial;
        font-style: initial;
        font-variant: initial;
        font-size: initial;
        line-height: initial;
        white-space: initial;
        text-align: initial;
      }
      HTML documents
      @namespace url(http://www.w3.org/1999/xhtml);
      
      :matches(table, thead, tbody, tfoot, tr) > form { display: none !important; }
    10. Margin collapsing quirks
      The elements with default margins are the following elements: 
         blockquote, dir, dl, h1, h2, h3, h4, h5, h6, listing, ol, p, plaintext, pre, ul, xmp
    11. Form controls
      @namespace url(http://www.w3.org/1999/xhtml);
      
      input, select, option, optgroup, button, textarea {
        text-indent: initial;
      }
      
      input:matches([type=radio i], [type=checkbox i], [type=reset i], [type=button i],
      [type=submit i], [type=search i]), select, button {
        box-sizing: border-box;
      }
      
      textarea { white-space: pre-wrap; }
      quirks mode
      @namespace url(http://www.w3.org/1999/xhtml);
      
      input:not([type=image i]), textarea { box-sizing: border-box; }
    12. The hr element
      @namespace url(http://www.w3.org/1999/xhtml);
      
      hr {
        color: gray;
        border-style: inset;
        border-width: 1px;
        margin-block-start: 0.5em;
        margin-inline-end: auto;
        margin-block-end: 0.5em;
        margin-inline-start: auto;
      }
      presentational hints:
      @namespace url(http://www.w3.org/1999/xhtml);
      
      hr[align=left i] { margin-left: 0; margin-right: auto; }
      hr[align=right i] { margin-left: auto; margin-right: 0; }
      hr[align=center i] { margin-left: auto; margin-right: auto; }
      hr[color], hr[noshade] { border-style: solid; }
    13. The fieldset and legend elements
      @namespace url(http://www.w3.org/1999/xhtml);
      
      fieldset {
        display: block;
        margin-inline-start: 2px;
        margin-inline-end: 2px;
        border: groove 2px ThreeDFace;
        padding-block-start: 0.35em;
        padding-inline-end: 0.625em;
        padding-block-end: 0.75em;
        padding-inline-start: 0.625em;
        min-width: min-content;
      }
      
      legend {
        padding-inline-start: 2px; padding-inline-end: 2px;
      }
  2. Replaced elements
    1. Embedded content
      @namespace url(http://www.w3.org/1999/xhtml);
      
      iframe { border: 2px inset; }
      video { object-fit: contain; }
    2. Images: quirks mode
      @namespace url(http://www.w3.org/1999/xhtml);
      
      img[align=left i] { margin-right: 3px; }
      img[align=right i] { margin-left: 3px; }
    3. Attributes for embedded content and images: presentational hints
      @namespace url(http://www.w3.org/1999/xhtml);
      
      iframe[frameborder=0], iframe[frameborder=no i] { border: none; }
      
      applet[align=left i], embed[align=left i], iframe[align=left i],
      img[align=left i], input[type=image i][align=left i], object[align=left i] {
        float: left;
      }
      
      applet[align=right i], embed[align=right i], iframe[align=right i],
      img[align=right i], input[type=image i][align=right i], object[align=right i] {
        float: right;
      }
      
      applet[align=top i], embed[align=top i], iframe[align=top i],
      img[align=top i], input[type=image i][align=top i], object[align=top i] {
        vertical-align: top;
      }
      
      applet[align=baseline i], embed[align=baseline i], iframe[align=baseline i],
      img[align=baseline i], input[type=image i][align=baseline i], object[align=baseline i] {
        vertical-align: baseline;
      }
      
      applet[align=texttop i], embed[align=texttop i], iframe[align=texttop i],
      img[align=texttop i], input[type=image i][align=texttop i], object[align=texttop i] {
        vertical-align: text-top;
      }
      
      applet[align=absmiddle i], embed[align=absmiddle i], iframe[align=absmiddle i],
      img[align=absmiddle i], input[type=image i][align=absmiddle i], object[align=absmiddle i],
      applet[align=abscenter i], embed[align=abscenter i], iframe[align=abscenter i],
      img[align=abscenter i], input[type=image i][align=abscenter i], object[align=abscenter i] {
        vertical-align: middle;
      }
      
      applet[align=bottom i], embed[align=bottom i], iframe[align=bottom i],
      img[align=bottom i], input[type=image i][align=bottom i],
      object[align=bottom i] {
        vertical-align: bottom;
      }
    4. Image maps
      For the purposes of the rendering, only the cursor property is expected to have any effect on the shape.
  3. Widgets
    1. The button element
      The button element is expected to render as an inline-block box rendered as a button whose contents are the contents of the element.
    2. The details and summary elements
      details > summary:first-of-type {
        display: list-item;
        list-style: disclosure-closed inside;
      }
      details[open] > summary:first-of-type {
        list-style-type: disclosure-open;
      }
    3. The input element as a text entry widget
       
    4. The input element as domain-specific widgets
       
    5. The input element as a range control
       
    6. The input element as a color well
       
    7. The input element as a checkbox and radio button widgets
       
    8. The input element as a file upload control
       
    9. The input element as a button
       
    10. The marquee element
       
    11. The meter element
       
    12. The progress element
       
    13. The select element
       
    14. The textarea element
      @namespace url(http://www.w3.org/1999/xhtml);
      
      textarea { white-space: pre-wrap; }
  4. Frames and framesets
    1.  
       
  5. Interactive media
    1. Links, forms, and navigation
       
    2. The title attribute
       
    3. Editing hosts
       
    4. Text rendered in native user interfaces
       
  6. Print media
    1.  
       
  7. Unstyled XML documents
    1.  
       

©sideway

ID: 180300004 Last Updated: 3/4/2018 Revision: 0


Latest Updated LinksValid XHTML 1.0 Transitional Valid CSS!Nu Html Checker Firefox53 Chromena IExplorerna
IMAGE

Home 5

Business

Management

HBR 3

Information

Recreation

Hobbies 8

Culture

Chinese 1097

English 339

Reference 79

Computer

Hardware 249

Software

Application 213

Digitization 32

Latex 52

Manim 205

KB 1

Numeric 19

Programming

Web 289

Unicode 504

HTML 66

CSS 65

SVG 46

ASP.NET 270

OS 429

DeskTop 7

Python 72

Knowledge

Mathematics

Formulas 8

Algebra 84

Number Theory 206

Trigonometry 31

Geometry 34

Coordinate Geometry 2

Calculus 67

Complex Analysis 21

Engineering

Tables 8

Mechanical

Mechanics 1

Rigid Bodies

Statics 92

Dynamics 37

Fluid 5

Fluid Kinematics 5

Control

Process Control 1

Acoustics 19

FiniteElement 2

Natural Sciences

Matter 1

Electric 27

Biology 1

Geography 1


Copyright © 2000-2024 Sideway . All rights reserved Disclaimers last modified on 06 September 2019