タイポグラフィ
Code Block
複数行のコードを表示するブロック。言語ラベルとワンクリックのコピー、行番号の表示に対応します。インラインのコードには Code を使います。
ReactVueWeb Components
Storybook で見る プレイグラウンド
使用例
<CodeBlock language="tsx" showLineNumbers>
{source}
</CodeBlock> 設定できる項目
| 名前 | 型 | 既定値 | 説明 |
|---|---|---|---|
code | string | — | The code string to display. Takes priority over children. |
language | string | — | Language label shown in the header bar (e.g. `'tsx'`, `'bash'`). |
showLineNumbers | boolean | false | Prepend 1-based line numbers. @default false |
copyable | boolean | true | Show a copy button in the header bar. @default true |
copyLabel | string | Copy | Accessible label for the copy button. @default 'Copy' |
copiedLabel | string | Copied | Label shown after a successful copy. @default 'Copied' |
children | ReactNode | — | Fallback when `code` is not provided. |
アクセシビリティ
- 文字と背景の明るさの差をしっかり取り、読みやすくしています。ライトでもダークでも、見やすさの国際基準 WCAG の最高ランク AAA(明るさの差が 7:1 以上)を満たします。
- マウスがなくても、キーボードだけですべての操作ができます。
- いまどこを操作しているかを示す枠(フォーカスの囲み)が、常にはっきり見えます。
- 利用者が「画面の動きを減らす」設定にしているときは、過剰なアニメーションを止めます。
どのコンポーネントも、だれにとっても使いやすいように、見やすさの国際基準 WCAG の最高ランク AAA(WCAG 2.1 AAA)を満たすよう作っています。