mirror of
https://github.com/RGBCube/serenity
synced 2025-05-16 20:05:07 +00:00

This moves LibWeb to using the list of hidden elements from the spec. Concretely, the following things are now explicitly marked `display: none` in addition to before: - elements with the `hidden` attribute - area - base - basefont - datalist - param - rp The spec also wants `noframes` and `noembed` to be `display: none`, but since support for frames and embeds doesn't exist yet, these are omitted for now. With this, everyone's favorite website http://45.33.8.238/ no longer displays spans with attribute hidden. (Whitespace handling still looks a bit off though.)
251 lines
3 KiB
CSS
251 lines
3 KiB
CSS
html {
|
|
font-family: sans-serif;
|
|
color: -libweb-palette-base-text;
|
|
}
|
|
|
|
a {
|
|
cursor: pointer;
|
|
}
|
|
|
|
body {
|
|
margin: 8px;
|
|
}
|
|
|
|
h1,
|
|
h2 {
|
|
font-family: Pebbleton;
|
|
font-size: 14px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
h3,
|
|
h4,
|
|
h5,
|
|
h6 {
|
|
font-weight: bold;
|
|
}
|
|
|
|
pre {
|
|
font-family: monospace;
|
|
margin-bottom: 8px;
|
|
margin-top: 8px;
|
|
white-space: pre;
|
|
}
|
|
|
|
code {
|
|
font-family: monospace;
|
|
}
|
|
|
|
u,
|
|
ins {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
strong,
|
|
b {
|
|
font-weight: bold;
|
|
}
|
|
|
|
html,
|
|
address,
|
|
blockquote,
|
|
body,
|
|
dd,
|
|
div,
|
|
dl,
|
|
dt,
|
|
fieldset,
|
|
form,
|
|
frame,
|
|
frameset,
|
|
hgroup,
|
|
h1,
|
|
h2,
|
|
h3,
|
|
h4,
|
|
h5,
|
|
h6,
|
|
noframes,
|
|
ol,
|
|
p,
|
|
ul,
|
|
center,
|
|
dir,
|
|
hr,
|
|
menu,
|
|
pre,
|
|
header,
|
|
footer,
|
|
nav,
|
|
main,
|
|
article,
|
|
aside,
|
|
section {
|
|
display: block;
|
|
}
|
|
|
|
center {
|
|
text-align: -libweb-center;
|
|
}
|
|
|
|
h1,
|
|
h2,
|
|
h3 {
|
|
margin: 8px 0 8px 0;
|
|
}
|
|
|
|
h4,
|
|
p,
|
|
blockquote,
|
|
ul,
|
|
fieldset,
|
|
form,
|
|
ol,
|
|
dl,
|
|
dir,
|
|
menu {
|
|
margin: 4px 0 4px 0;
|
|
}
|
|
|
|
h5,
|
|
h6 {
|
|
margin: 2px 0 2px 0;
|
|
}
|
|
|
|
li {
|
|
display: list-item;
|
|
margin-left: 8px;
|
|
margin-top: 2px;
|
|
margin-bottom: 2px;
|
|
}
|
|
|
|
a:link {
|
|
color: -libweb-link;
|
|
text-decoration: underline;
|
|
}
|
|
|
|
a:hover {
|
|
color: red;
|
|
}
|
|
|
|
hr {
|
|
margin-top: 0.5em;
|
|
margin-bottom: 0.5em;
|
|
border: 1px inset #888888;
|
|
}
|
|
|
|
blink {
|
|
display: inline;
|
|
}
|
|
|
|
table {
|
|
display: table;
|
|
}
|
|
|
|
thead {
|
|
display: table-header-group;
|
|
vertical-align: middle;
|
|
border-color: inherit;
|
|
}
|
|
|
|
tbody {
|
|
display: table-row-group;
|
|
vertical-align: middle;
|
|
border-color: inherit;
|
|
}
|
|
|
|
tfoot {
|
|
display: table-footer-group;
|
|
vertical-align: middle;
|
|
border-color: inherit;
|
|
}
|
|
|
|
tr {
|
|
display: table-row;
|
|
}
|
|
|
|
td,
|
|
th {
|
|
display: table-cell;
|
|
}
|
|
|
|
col {
|
|
display: table-column;
|
|
}
|
|
|
|
colgroup {
|
|
display: table-column-group;
|
|
}
|
|
|
|
blockquote {
|
|
margin-left: 25px;
|
|
margin-right: 25px;
|
|
}
|
|
|
|
ul,
|
|
ol {
|
|
padding-left: 20px;
|
|
}
|
|
|
|
ul {
|
|
list-style-type: disc;
|
|
}
|
|
|
|
ol {
|
|
list-style-type: decimal;
|
|
}
|
|
|
|
/* FIXME: Implement these using :is() :^) */
|
|
/* :is(ul, ol) ul */
|
|
ul ul,
|
|
ol ul {
|
|
list-style-type: circle;
|
|
}
|
|
|
|
/* :is(ul, ol) :is(ul, ol) ul */
|
|
ul ul ul,
|
|
ol ul ul,
|
|
ul ol ul,
|
|
ol ol ul {
|
|
list-style-type: square;
|
|
}
|
|
|
|
/* FIXME: This is a temporary hack until we can render a native-looking frame for these. */
|
|
input[type=text] {
|
|
border: 1px solid black;
|
|
min-width: 80px;
|
|
min-height: 16px;
|
|
}
|
|
|
|
option {
|
|
display: none;
|
|
}
|
|
|
|
details {
|
|
display: block;
|
|
padding-left: 1em;
|
|
}
|
|
|
|
summary {
|
|
display: block;
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* 15.3.1 Hidden elements
|
|
* https://html.spec.whatwg.org/multipage/rendering.html#hidden-elements
|
|
*/
|
|
/* FIXME: Add `noframes` once frames are implemented. */
|
|
/* FIXME: Add `noembed` once <embed> is implemented. */
|
|
/* FIXME: Add `rp` once <ruby> is implemented. */
|
|
[hidden], area, base, basefont, datalist, head, link, meta, /*noembed,*/
|
|
/*noframes,*/ param, /*rp,*/ script, style, template, title {
|
|
display: none;
|
|
}
|
|
|
|
embed[hidden] { display: inline; height: 0; width: 0; }
|
|
|
|
input[type=hidden i] { display: none !important; }
|
|
|
|
@media (scripting) {
|
|
noscript { display: none !important; }
|
|
}
|