タイポグラフィ

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)を満たすよう作っています。