Integrate <ruby-switch> into the templates
This commit is contained in:
parent
abb85f701d
commit
8022a8f84a
5 changed files with 25 additions and 25 deletions
|
@ -1,3 +1,5 @@
|
|||
// Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
class RubySwitch extends HTMLElement {
|
||||
static controlSizeInPixels = 32;
|
||||
static thumbTransitionDuration = 0.1;
|
||||
|
@ -11,7 +13,7 @@ class RubySwitch extends HTMLElement {
|
|||
{
|
||||
id: "ruby-switch-both",
|
||||
value: "both",
|
||||
label: "あa",
|
||||
label: "<ruby>あ<rt>a</rt></ruby>",
|
||||
default: true
|
||||
},
|
||||
{
|
||||
|
@ -94,6 +96,9 @@ class RubySwitch extends HTMLElement {
|
|||
z-index: 2;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#ruby-switch-both {
|
||||
}
|
||||
`;
|
||||
}
|
||||
|
||||
|
@ -140,7 +145,7 @@ class RubySwitch extends HTMLElement {
|
|||
}, { capture: true });
|
||||
|
||||
const label = document.createElement("b");
|
||||
label.textContent = desc.label;
|
||||
label.innerHTML = desc.label;
|
||||
control.appendChild(label);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,29 +1,25 @@
|
|||
@layer root {
|
||||
body:has(fieldset#ruby-controls > input[value=NONE]:checked) rt { display: none; }
|
||||
body:has(ruby-switch[value=none]) rt {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* When ruby-controls is set to hidden, hide the ruby base and only show the <rt> */
|
||||
body:has(fieldset#ruby-controls > input[value=HIDDEN]:checked) ruby > span { display: none; }
|
||||
/* When the ruby switch is set to "hidden", hide the ruby base and only show the <rt>. */
|
||||
body:has(ruby-switch[value=hidden]) ruby > span {
|
||||
display: none;
|
||||
}
|
||||
|
||||
body:has(fieldset#ruby-controls > input[value=HIDDEN]:checked) rt {
|
||||
body:has(ruby-switch[value=hidden]) rt {
|
||||
color: inherit;
|
||||
display: inline;
|
||||
font-size: inherit;
|
||||
white-space: inherit;
|
||||
}
|
||||
|
||||
body:has(fieldset#ruby-controls > input[value=HIDDEN]:checked) :is(h1, h2, h3, h4, h5, h6) rt {
|
||||
body:has(ruby-switch[value=hidden]) :is(h1, h2, h3, h4, h5, h6) rt {
|
||||
font-family: var(--font-family-heading);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
fieldset#ruby-controls input[type=radio] {
|
||||
margin-inline-end: calc(var(--body-item-spacing) / 6);
|
||||
}
|
||||
|
||||
fieldset#ruby-controls label {
|
||||
margin-inline-end: calc(var(--body-item-spacing));
|
||||
}
|
||||
|
||||
rt { transition: color 0.3s; }
|
||||
ruby:hover rt { transition: color 0.3s; }
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue