diff options
author | Michael Drake <tlsa@netsurf-browser.org> | 2015-08-08 14:09:06 +0100 |
---|---|---|
committer | Michael Drake <tlsa@netsurf-browser.org> | 2015-08-08 14:09:06 +0100 |
commit | 7bcfe771081edd9592bb2b008249da74b13cc41d (patch) | |
tree | e92789e9d4f22d9c3838cddb61a609b5a692b0af | |
parent | 82b3eb757de42a379fa26f7a699899223dbcee4a (diff) | |
download | libnslayout-7bcfe771081edd9592bb2b008249da74b13cc41d.tar.gz libnslayout-7bcfe771081edd9592bb2b008249da74b13cc41d.tar.bz2 |
HTML5 (14.3) default user agent CSS files.
TODO:
1. Quirks mode default CSS.
2. Quotes and :matches(article, aside, nav, section) block in
"sections and headings" section.
-rw-r--r-- | resources/ua.default.css | 259 | ||||
-rw-r--r-- | resources/ua.iso-8859-8.css | 13 |
2 files changed, 272 insertions, 0 deletions
diff --git a/resources/ua.default.css b/resources/ua.default.css new file mode 100644 index 0000000..9dddfa7 --- /dev/null +++ b/resources/ua.default.css @@ -0,0 +1,259 @@ +/* 14.3.1 Hidden elements */ + +[hidden], area, base, basefont, datalist, head, link, menu[type=popup i], 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; } + +/* 14.3.2 The page */ + +html, body { display: block; } + +/* 14.3.3 Flow content */ + +address, blockquote, center, div, figure, figcaption, footer, form, header, hr, +legend, listing, main, p, plaintext, pre, summary, xmp { + display: block; +} + +blockquote, figure, listing, p, plaintext, pre, xmp { + margin-top: 1em; margin-bottom: 1em; +} + +blockquote, figure { margin-left: 40px; margin-right: 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 { + position: fixed; + top: 0; right: 0; bottom: 0; left: 0; + 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; + } +} + +/* 14.3.4 Phrasing content */ + +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 colour 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; } + +/* 14.3.5 Bidirectional text */ + +[dir]:dir(ltr), bdi:dir(ltr), input[type=tel]: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, menu, ol, ul, li, bdi, output, +[dir=ltr i], [dir=rtl i], [dir=auto i] { + unicode-bidi: isolate; +} + +bdo, bdo[dir] { unicode-bidi: isolate-override; } + +textarea[dir=auto i], pre[dir=auto i] { unicode-bidi: plaintext; } + +/* the rules setting the 'content' property on br and wbr elements also has bidi implications */ + +/* 14.3.6 Quotes */ + +/* TODO: Revolting quotes handling CSS block. */ + +/* 14.3.7 Sections and headings */ + +article, aside, h1, h2, h3, h4, h5, h6, hgroup, nav, section { + display: block; +} + +h1 { margin-top: 0.67em; margin-bottom: 0.67em; font-size: 2.00em; font-weight: bold; } +h2 { margin-top: 0.83em; margin-bottom: 0.83em; font-size: 1.50em; font-weight: bold; } +h3 { margin-top: 1.00em; margin-bottom: 1.00em; font-size: 1.17em; font-weight: bold; } +h4 { margin-top: 1.33em; margin-bottom: 1.33em; font-size: 1.00em; font-weight: bold; } +h5 { margin-top: 1.67em; margin-bottom: 1.67em; font-size: 0.83em; font-weight: bold; } +h6 { margin-top: 2.33em; margin-bottom: 2.33em; font-size: 0.67em; font-weight: bold; } + +/* TODO: Missing awful :matches(article, aside, nav, section) block */ + +/* 14.3.8 Lists */ + +dir, dd, dl, dt, menu, ol, ul { display: block; } +li { display: list-item; } + +dir, dl, menu, ol, ul { margin-top: 1em; margin-bottom: 1em; } + +:matches(dir, dl, menu, ol, ul) :matches(dir, dl, menu, ol, ul) { + margin-top: 0; margin-bottom: 0; +} + +dd { margin-left: 40px; } /* LTR-specific: use 'margin-right' for rtl elements */ +dir, menu, ol, ul { padding-left: 40px; } /* LTR-specific: use 'padding-right' for rtl elements */ + +ol { list-style-type: decimal; } + +dir, menu, ul { + list-style-type: disc; +} +:matches(dir, menu, ol, ul) :matches(dir, menu, ul) { + list-style-type: circle; +} +:matches(dir, menu, ol, ul) :matches(dir, menu, ol, ul) :matches(dir, menu, ul) { + list-style-type: square; +} + +/* 14.3.9 Tables */ + +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; } + +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; +} + +/* 14.3.11 Form controls */ + +input, select, option, optgroup, button, textarea, keygen { + text-indent: initial; +} + +textarea { white-space: pre-wrap; } + +input[type="radio"], input[type="checkbox"], input[type="reset"], input[type="button"], +input[type="submit"], select, button { + box-sizing: border-box; +} + +/* 14.3.12 The hr element */ + +hr { color: gray; border-style: inset; border-width: 1px; margin: 0.5em auto; } + +/* 14.3.13 The fieldset and legend elements */ + +fieldset { + display: block; + margin-left: 2px; margin-right: 2px; + border: groove 2px ThreeDFace; + padding: 0.35em 0.625em 0.75em; + min-width: min-content; +} + +legend { + padding-left: 2px; padding-right: 2px; +} + +/* 14.4.1 Embedded content */ + +iframe:not([seamless]) { border: 2px inset; } +iframe[seamless] { display: block; } +video { object-fit: contain; } + diff --git a/resources/ua.iso-8859-8.css b/resources/ua.iso-8859-8.css new file mode 100644 index 0000000..0284b05 --- /dev/null +++ b/resources/ua.iso-8859-8.css @@ -0,0 +1,13 @@ +/* 14.3.5 Bidirectional text */ + +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, menu, 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, keygen { + unicode-bidi: normal; +} |