
2026/02/08 2:45
**Show HN:** このクールなナビゲーションリベール(表示アニメーション)を見て、シンプルなHTML+CSSバージョンを作ってみました。
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
概要:
この記事では、JavaScript を一切使わずに HTML と CSS だけでスムーズなメニュー表示効果を作る方法を説明しています。画面左上から右下へと拡大する円形の clip‑path(半径は
calc(1.42 * 100vmax)、乗数 1.42 は √2 で完全にカバーできるように設計)を適用すると、ボタンクリック時に視覚的に印象的なアニメーションが発生します。二次的に多角形の clip‑path を使って「光線」効果をシミュレートしています。ここではハードコードされていますが、JavaScript で動的に寸法を計算してレスポンシブデザインに適応させることも可能です。 https://iventions.com/ のコンセプトと X(旧 Twitter)などのプラットフォームで見られるアイデアに触発され、開発者はさらに実験できるようになっています。ネイティブな Web 技術だけを利用しているため、軽量かつ高性能な代替手段として、モダン UI デザインをミニマリズムと純粋な CSS ソリューションへ導く影響力があります。本文
クリップパスで遊ぶ
これは、X(Twitter)で見た https://iventions.com/ からインスピレーションを得て、ちょっと盗んだだけのシンプルなコード実験です。
この例では、ユーザーがボタンをクリックするとメニューが表示される仕組みを、JavaScript を使わずに HTML と CSS のみで実装しています。
clip-path には二種類の定義があります:
-
メニューは画面左上から右下へと拡大する円として描画されます。
ここで使用した計算式は以下の通りです。clip-path: circle(calc(1.42 * 100vmax) at 0 0);
はビューポート幅と高さのうち大きい方を指し、これに 1.42(≈ √2)を掛けることで幅と高さの比率を合わせています。vmax -
二つ目の
は「レイ」をシミュレートした多角形です。clip-path
現在はハードコーディングされていますが、JavaScript で動的に計算すればナビゲーションのサイズに応じてレスポンシブに対応できます。
ご覧いただきありがとうございました!