6 年前、私はネイティブの を探索しました。 アクセシブルなアコーディオンを作成するための要素。それ以来、Web プラットフォームは進化し、独自のオープン動作やスムーズなアニメーションなどのエキサイティングな新機能をこれらの要素に導入しました。

ネイティブ HTML: アコーディオン
アンドリュー・ボーン ・ 2019 年 1 月 4 日
この記事では、
基本:
これは簡単な例です:
<details> <summary>Read more</summary> Some text to be hidden. </details>
概要をクリックすると、関連するコンテンツの表示が切り替わります。 JavaScript は必要ありません!
機能強化: 排他的なオープン動作
一度に 1 つのセクションだけを開く従来のアコーディオンの動作を模倣するには、
<details name="exclusive"> <summary>Section 1</summary> <p>Content for section 1.</p> </details> <details name="exclusive"> <summary>Section 2</summary> <p>Content for section 2.</p> </details>
この動作はネイティブであり、最新のブラウザでシームレスに動作します!
CSS を使用してスムーズなアニメーションを追加する
開始と終了のトランジションをよりスムーズにするには、interpolate-size やtransition-behavior などの最新の CSS プロパティを使用できます。
主要なプロパティ
- interpolate-size: 固有のサイズ (自動など) と固定サイズの間のアニメーションを許可します。 このプロパティは現在 Chrome でのみサポートされています。
- transition-behavior:allow-discrete に設定すると、可視性や表示など通常アニメーション化できないプロパティは、即座に更新されずに待機します。
スタイリング例
デモで使用される CSS の完全な例は次のとおりです:
details { interpolate-size: allow-keywords; overflow: clip; margin-top: 0.125em; border: 1px solid #dddddd; background: #ffffff; color: #333333; border-radius: 3px; } details summary { display: block; cursor: pointer; position: relative; padding: 0.5em 0.5em 0.5em 0.7em; background: #ededed; color: #2b2b2b; border-radius: 3px 3px 0 0; } details:not([open]) summary:hover, details:not([open]) summary:focus { background: #f6f6f6; color: #454545; } details[open] summary { outline: 1px solid #003eff; background: #007fff; color: #ffffff; } details[open]::details-content { height: auto; } details::details-content { height: 0; overflow-y: clip; transition: content-visibility 475ms allow-discrete, height 475ms; } details main { padding: 1em 2.2em; }
仕組み
- 高さアニメーション: interpolate-size プロパティにより、高さ: 0 (閉じた状態) と高さ: 自動 (開いた状態) の間のスムーズな移行が可能になります。ただし、これは現在 Chrome でのみサポートされています。
- 可視性遷移: 遷移動作プロパティにより、可視性の変化がシームレスに見えるようになります。
デモ: すべてを統合する
完全な実装は次のとおりです:
ブラウザのサポート
- interpolate-size: 現在、Chrome でのみサポートされています。
- 遷移動作: ほとんどの最新ブラウザでサポートされています。
サポートされていないブラウザの場合、アニメーションは正常にフォールバックし、アコーディオンはスムーズな遷移がなくても機能し続けます。
結論
要素を最新の CSS と組み合わせることで、インタラクティブなアコーディオンを作成するための軽量でアクセスしやすいソリューションが提供されます。これらの新しい機能強化により、最新の Web プロジェクトにとってさらに魅力的なものになります。デモを試して、あなたのアコーディオンに新鮮で洗練された外観を与えてください!
読んでいただきありがとうございます。開発外で私とつながりたい場合は、私の twitter、bsky、linkedin に連絡してください?
以上がネイティブ HTML: アコーディオンの再考の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

CSS Box-Shadowおよびアウトラインプロパティは、WordPress 6.1でTheme.jsonサポートを獲得しました。実際のテーマでどのように機能するか、そしてこれらのスタイルをWordPressブロックと要素に適用するために必要なオプションのいくつかの例を見てみましょう。

このチュートリアルでは、Smart Formsフレームワークを使用して、プロフェッショナルなJavaScriptフォームの作成を示しています(注:使用できなくなりました)。 フレームワーク自体は利用できませんが、原則とテクニックは他のフォームビルダーに関連しています。

これは、フォームアクセシビリティについて行った小さなシリーズの3番目の投稿です。 2番目の投稿を逃した場合は、「ユーザーフォーカスの管理:Focus-Visible」をご覧ください。で

インラインテキストエディターの構築は些細なものではありません。 このプロセスは、ターゲット要素を編集可能にすることから始まり、その過程で潜在的なSyntaxerrorの例外を処理します。 エディターの作成 このエディターを構築するには、コンテンツを動的に変更する必要があります

最近GraphQLの作業を開始した場合、またはその長所と短所をレビューした場合、「GraphQLがキャッシュをサポートしていない」または

Svelte Transition APIは、コンポーネントがカスタムSVELTE遷移を含むドキュメントを入力または離れるときにアニメーション化する方法を提供します。

この記事では、Envato Marketで入手可能なPHPフォームのビルダースクリプトを説明し、機能、柔軟性、デザインを比較します。 特定のオプションに飛び込む前に、PHPフォームのビルダーが何であるか、そしてそれを使用する理由を理解しましょう。 PHPフォーム

このチュートリアルは、node.js、Express、およびMulterを使用してファイルアップロードシステムを構築することをガイドします。 単一および複数のファイルのアップロードをカバーし、後で検索するためにMongoDBデータベースに画像を保存することさえ示します。 まず、プロジェックをセットアップします


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

Dreamweaver Mac版
ビジュアル Web 開発ツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。
