Ruby markup
I ruby markup (o annotazioni ruby o semplicemente ruby (ルビ?, rubi)) sono brevi sequenze di testo affiancate al testo base, tipicamente utilizzate nei documenti dell'Asia orientale per indicare la trascrizione fonetica di parole cinesi (pinyin) o giapponesi (furigana) o per fornire brevi annotazioni. Il nome deriva dall'omonima unità di misura tipografica corrispondente a 5 punti[1][2].
Esempio | HTML | Effetto | Senza il tag <ruby> |
---|---|---|---|
Tokyo | <ruby><rb>東京</rb><rp>(</rp><rt>とうきょう</rt><rp>)</rp></ruby>
|
Formattazione
[modifica | modifica wikitesto]Valori
[modifica | modifica wikitesto]I seguenti valori di visualizzazione assegnano ruoli di layout ruby a un elemento arbitrario[3]:
- ruby
- Specifica che un elemento genera un contenitore ruby. (Corrisponde agli elementi
<ruby>
HTML/XHTML.) - ruby-base
- Specifica che un elemento genera un contenitore ruby di base. (Corrisponde agli elementi
<rb>
HTML/XHTML.) - ruby-text
- Specifica che un elemento genera una casella di annotazione ruby. (Corrisponde agli elementi
<rt>
HTML/XHTML.) - ruby-base-container
- Specifica che un elemento genera un contenitore ruby di base. (Corrisponde agli elementi
<rbc>
XHTML; generato come una casella anonima in HTML.) - ruby-text-container
- Specifica che un elemento genera una casella contenitore di annotazioni ruby. (Corrisponde agli elementi
<rtc>
HTML/XHTML.)
- alternate
Diversi livelli di annotazioni si alternano tra sopra e sotto.
over
L'annotazione in ruby appare al di sopra della base.
under
L'annotazione ruby appare in linea sotto la base. Questa è un'impostazione relativamente rara utilizzata nei sistemi di scrittura ideografici dell'Asia orientale, più facilmente riscontrabile nel testo educativo.
inter-character
Simile adover
separate
Ogni casella di annotazione ruby è resa all'interno della stessa colonna come la sua casella di base corrispondente, cioè senza basi adiacenti sovrapposte su entrambi i lati.
merge
Tutte le caselle di annotazione ruby all'interno dello stesso segmento e sulla stessa linea sono concatenate come caselle "inline" all'interno del loro contenitore di annotazioni e disposte in una singola casella di annotazione ruby anonima che copre tutte le caselle di base ruby associate.
auto
L'interprete può utilizzare qualsiasi algoritmo per determinare come ogni casella di annotazione ruby viene resa nella casella di base corrispondente, con la conseguenza che se tutte le annotazioni si adattano alle rispettive basi, il risultato è identico a separate
, ma se alcune annotazioni sono più larghe della loro basi lo spazio è condiviso per evitare di imporre spazio tra le basi.
Proprietà
[modifica | modifica wikitesto]Nome | Valore | Iniziale | Si applica a | Ereditato | Valore di animazione | Ordine canonico | Valore calcolato |
---|---|---|---|---|---|---|---|
ruby-align | start | center | space-between | space-around | space-around | basi ruby, annotazioni di ruby, contenitori di base di ruby, contenitori di annotazioni di ruby | si | dipende dal valore immesso | dipende dalla grammatica | keyword
specificata |
ruby-merge | separate | merge | auto | separate | contenitori di annotazione ruby interlineare | si | dipende dal valore immesso | dipende dalla grammatica | keyword
specificata |
ruby-overhang | auto | none | auto | contenitori per annotazioni ruby | si | dipende dal valore immesso | dipende dalla grammatica | keyword
specificata |
ruby-position | [ alternate || [ over | under ] ] | inter-character | alternate | contenitori per annotazioni ruby | si | discrete | dipende dalla grammatica | keyword
specificata |
Attributi
[modifica | modifica wikitesto]Globali | Gestore eventi | ||
accesskey | onabort | onended | onplaying |
autocapitalize | onauxclick | onerror | onprogress |
class | onblur | onfocus | onratechange |
contenteditable | oncancel | onformdata | onreset |
data | oncanplay | oninput | onresize |
dir | oncanplaythrough | oninvalid | onscroll |
draggable | onchange | onkeydown | onsecuritypolicyviolation |
hidden | onclick | onkeypress | onseeked |
id | onclose | onkeyup | onseeking |
inputmode | oncontextmenu | onlanguagechange | onselect |
is | oncopy | onload | onslotchange |
itemid | oncuechange | onloadeddata | onstalled |
itemprop | oncut | onloadedmetadata | onsubmit |
itemref | ondblclick | onloadstart | onsuspend |
itemscope | ondrag | onmousedown | ontimeupdate |
itemtype | ondragend | onmouseenter | ontoggle |
lang | ondragenter | onmouseleave | onvolumechange |
part | ondragexit | onmousemove | onwaiting |
slot | ondragleave | onmouseout | onwheel |
spellcheck | ondragover | onmouseover | |
style | ondragstart | onmouseup | |
tabindex | ondrop | onpaste | |
title | ondurationchange | onpause | |
translate | onemptied | onplay |
Note
[modifica | modifica wikitesto]- ^ CSS Ruby Annotation Layout Module Level 1, su w3.org. URL consultato il 23 agosto 2021.
- ^ W3C HTML Ruby Markup Extensions, su w3.org. URL consultato il 23 agosto 2021.
- ^ HTML 5 Tag, su quackit.com. URL consultato il 23 agosto 2021.
Bibliografia
[modifica | modifica wikitesto]- (EN) Ken Lunde, Ruby Glyphs, in CJKV Information Processing, O'Reilly Media, 1999, ISBN 978-0-596-51447-1.
Collegamenti esterni
[modifica | modifica wikitesto]- (EN) Ruby Markup, su W3C, 14 giugno 2016.
- (EN) Use Cases & Exploratory Approaches for Ruby Markup, su W3C, 8 ottobre 2013.
- (EN) CSS Ruby Layout Module Level 1, su W3C, 5 agosto 2014.