​​React​CSS,Playwright,ResizeObserver,TypeScript,アクセシビリティ

Thumbnail of post image 119

お知らせの文字を右から左へ流し続ける React のコンポーネントです。同じリストを2つ並べて CSS アニメーションで半分だけ動かし、つなぎ目をなくします。一時停止ボタン、キーボード操作、動きを減らす設定への対応も入れています。

​​React​Playwright,TypeScript,アクセシビリティ

Thumbnail of post image 134

Reactで表のセルをクリックすると入力欄に変わり、Enter で保存、Escape で取り消せるようにしました。変換を確定する Enter で保存しない書き方、編集後にフォーカスをセルへ戻す方法、間違った値のときに編集を続けさせる方 ...

​​React​Playwright,TypeScript,アクセシビリティ

Thumbnail of post image 178

一時停止と再開ができるカウントダウンタイマーを、React と TypeScript で作りました。残り時間は終わる時刻との差から出すので、タイマーの呼び出しが遅れても表示がずれたままになりません。秒の切り上げ方なども Chromiu ...

​​React​CSS,dialog,Playwright,TypeScript,アクセシビリティ

Thumbnail of post image 037

一覧の画像を押すと、画面いっぱいに大きく表示するライトボックスを、ライブラリを使わずに React と dialog 要素で作りました。画面に収める CSS、矢印キーでの送り、前の画像を残さない key の使い方、先読み、閉じたあとの ...

​​React​Intl,JavaScript,Playwright,TypeScript,アクセシビリティ

Thumbnail of post image 072

月ごとのカレンダーを、ライブラリを使わずに React と TypeScript で作りました。日付を6行×7列に並べる計算、月をまたぐときの Date の扱い、今日と選んだ日の伝え方、矢印キーで日を移る動きを、Chromium で確 ...

​​React​CSS,Playwright,ResizeObserver,TypeScript,アクセシビリティ,カスタムフック

Thumbnail of post image 162

記事をどこまで読んだかを画面の上のバーで示すフックを、React で作りました。割合はページ全体ではなく記事の要素から計算し、画像の読み込みで記事の高さが変わったときも ResizeObserver で計算し直します。CSS だけで作 ...

​​React​CSS,Playwright,Pointer Events,TypeScript,アクセシビリティ

Thumbnail of post image 098

​

加工前と加工後のような2枚の画像を重ね、つまみを左右に動かして見比べる表示を、ライブラリを使わずに React で作りました。ビフォーアフターを1つの枠で見せたいときに使えます。clip-path で隠す理由、キーボードでの操作、po ...

​​React​CSS,Playwright,ResizeObserver,TypeScript,useLayoutEffect,アクセシビリティ

Thumbnail of post image 135

長い文章を3行で切って「続きを読む」ボタンで広げるコンポーネントを TypeScript で作りました。行数で切る CSS、はみ出したときだけボタンを出す測り方、隠れた部分のリンクに Tab で入ったときの対策を Chromium で ...

​​React​createPortal,Playwright,TypeScript,useLayoutEffect,アクセシビリティ

Thumbnail of post image 091

右クリックした位置に独自のメニューを出すコンポーネントを TypeScript で作りました。ブラウザのメニューの止め方、画面の端で反対側に開く計算、閉じる処理、Shift+F10 と矢印キーでの操作を Chromium で確かめてい ...

​​React​Playwright,TypeScript,アクセシビリティ,フォーム

Thumbnail of post image 069

React で色を選ぶ入力欄を、input type=”color” と state で作りました。値が小文字の「#rrggbb」で読み出されることや onChange が呼ばれる回数、カラーコード欄と色のボタ ...

カテゴリー