vivliostyle / vfm

⬇️ Open and extendable Markdown syntax and toolchain.
https://vivliostyle.github.io/vfm/#/vfm
Other
69 stars 12 forks source link

feat: WAI-ARIA role #181

Closed akabekobeko closed 8 months ago

akabekobeko commented 8 months ago

refs: #28

VFM v2 残件のうち対応が容易そうだったので、WAI-ARIA role を実装してみました。記法の追加ではなく https://github.com/vivliostyle/vfm/issues/28#issuecomment-768171789 のように DPUB-ARIA へ定義されているクラス名を持つ要素があれば対応する role を doc-xxxx として追加します。

MurakamiShinyu commented 8 months ago

## Abstract {.abstract} のように見出しを指定したとき、

<section class="level2" aria-labelledby="abstract">
  <h2 class="abstract" id="abstract" role="doc-abstract">Abstract</h2>
  <p>This is an abstract.</p>
</section>

ではなくて

<section class="level2" aria-labelledby="abstract" role="doc-abstract">
  <h2 class="abstract" id="abstract">Abstract</h2>
  <p>This is an abstract.</p>
</section>

となるべきです。

https://w3c.github.io/dpub-aria/#doc-abstract で、

Superclass Role: section

とされてます。sectionのrole属性にする必要があります。sectionを生成する見出しに指定されたときのroleはすべてsectionのほうに指定するのでよいと思います。

akabekobeko commented 8 months ago

@MurakamiShinyu この role は section のみを対応とするのでしょうか? であれば実装方法として HAST ではなく section 処理のほうにしたほうがよいので PR を破棄します。

MurakamiShinyu commented 8 months ago

@MurakamiShinyu この role は section のみを対応とするのでしょうか? であれば実装方法として HAST ではなく section 処理のほうにしたほうがよいので PR を破棄します。

はい、セクション化の処理での対応だけでよいと思います。それからフェンス記法をサポートしたら、そのときに。

akabekobeko commented 8 months ago

はい、セクション化の処理での対応だけでよいと思います。それからフェンス記法をサポートしたら、そのときに。

とのことなので本 PR は破棄します。時間がとれたらセクション処理の改善として別途 PR 出します。