ホームページ > ウェブフロントエンド > htmlチュートリアル > <詳細> and< summary> 折りたたみ可能なセクションを作成する要素?

<詳細> and< summary> 折りたたみ可能なセクションを作成する要素?

James Robert Taylor
リリース: 2025-03-20 15:52:28
オリジナル
544 人が閲覧しました

および要素をどのように使用して折りたたみ可能なセクションを作成しますか?

Webページで折りたたみ可能なセクションを作成するには、HTML5 <details></details>および<summary></summary>要素を使用できます。 <details></details>要素は、ユーザーが追加情報またはコントロールを取得するために対話できるウィジェットを表します。 <summary></summary>要素は、 <details></details>要素の直接の子である必要がありますが、 <details></details>要素の概要またはラベルを指定します。

これらの要素の使用方法の基本的な例は次のとおりです。

 <code class="html"><details> <summary>Click to expand</summary> <p>This is the content that will be shown when the user expands the section.</p> </details></code>
ログイン後にコピー

この例では:

  • <details></details>要素は、折りたたみ可能なウィジェットを作成します。
  • <summary></summary>要素は、ウィジェットのラベルを提供します。このラベルをクリックすると、 <details></details>要素内のコンテンツの可視性が切り替えられます。
  • <details></details> <summary></summary>の内側のコンテンツは、ユーザーがウィジェットと対話するときに非表示または表示されるものです。

htmlコンテンツを<details></details>要素内に配置して、Webページに柔軟で豊富な折りたたみ式セクションを可能にします。

ユーザーエクスペリエンスにとを使用することの利点は何ですか?

<details></details>および<summary></summary>要素を使用すると、いくつかの方法でユーザーエクスペリエンスを大幅に向上させることができます。

  1. 認知負荷の削減:ユーザーが必要に応じてコンテンツを拡大および崩壊させることにより、これらの要素は情報の過負荷を管理するのに役立ちます。ユーザーは、すぐに関連するものに集中し、自分のペースで追加の詳細を調べることができます。
  2. 改善されたアクセシビリティ:これらの要素はHTML5に組み込まれており、スクリーンリーダーやその他の支援技術によって認識されます。 <details></details>要素のopen属性を使用して、ウィジェットの初期状態を設定することもできます。これは、アクセシビリティに有益です。
  3. より良いコンテンツ組織:折りたたみ可能なセクションは、コンテンツをより効果的に整理するのに役立ち、ユーザーが大量の情報を簡単にナビゲートできるようにします。これは、FAQ、ドキュメント、その他のコンテンツが多いページに特に役立ちます。
  4. ユーザーコントロール:ユーザーは、自分が見ているものとそれを見るときを制御できます。関係のないコンテンツをスクロールする必要なく、情報をすばやく非表示または表示できます。
  5. JavaScriptは必要ありません:これらの要素はHTML5のネイティブです。つまり、JavaScriptに依存することなくインタラクティブなコンテンツを実現できます。これにより、ページの読み込み時間を改善し、開発を簡素化できます。

およびをCSSでスタイル化できますか?

はい、 <details></details><summary></summary>要素はCSSでスタイルを整えることができ、ウェブサイトのデザインに合わせて高度なカスタマイズを可能にします。これらの要素のスタイリング方法は次のとおりです。

  1. <details></details>要素のスタイリング:CSSを使用して、折りたたみ可能なセクション全体の外観を変更できます。たとえば、境界線、背景色、パディングを設定できます。
 <code class="css">details { border: 1px solid #aaa; border-radius: 4px; padding: .5em .5em 0; } details[open] { padding: .5em; } details[open] summary { border-bottom: 1px solid #aaa; margin-bottom: .5em; }</code>
ログイン後にコピー
  1. <summary></summary>要素のスタイリング:サマリーラベルの外観を変更できます。たとえば、色、フォント、およびアイコンを追加することができます。
 <code class="css">summary { font-weight: bold; color: #333; } summary::marker { /* Hide default marker */ content: ""; } summary::before { /* Add custom marker */ content: "▶ "; font-size: .8em; } details[open] summary::before { content: "▼ "; }</code>
ログイン後にコピー
  1. マーカーのカスタマイズ::marker擬似エレメントを使用して、デフォルトのマーカー(通常は三角形)のスタイルがありますが、ブラウザのサポートは限られています。 ::before ::afterカスタムマーカーを追加するためのより一貫した方法になります。
  2. ホバーとフォーカス状態:ユーザーの相互作用を改善するために、ホバー状態とフォーカス状態をスタイリングすることもできます。
 <code class="css">summary:hover, summary:focus { color: #000; cursor: pointer; }</code>
ログイン後にコピー

これらの要素をスタイリングできますが、一部のブラウザにはカスタムCSSをオーバーライドする必要があるデフォルトスタイルがある場合があることを忘れないでください。

およびを使用するときに考慮すべきブラウザの互換性の問題はありますか?

<details></details>および<summary></summary>はHTML5標準の一部ですが、考慮すべきブラウザの互換性の問題がいくつかあります。

  1. 古いブラウザー:これらの要素は、インターネットエクスプローラーまたは他のブラウザの古いバージョンではサポートされていません。これらのブラウザをサポートする必要がある場合は、ポリフィルまたは代替ソリューションを使用する必要がある場合があります。
  2. スタイリング::: ::marker Pseudo-Elementなどのいくつかのスタイリング機能には、ブラウザのサポートが限られています。ブラウザ全体で一貫したスタイリングを実現するには、 ::before::afterような代替方法を使用する必要がある場合があります。
  3. デフォルトの動作:一部のブラウザには、これらの要素の異なるデフォルトスタイルと動作がある場合があります。たとえば、Safariでは、 <summary></summary> display: blockでスタイリングすることはできません。これらの違いを正規化するには、CSSを使用する必要がある場合があります。
  4. JavaScriptの相互作用:JavaScriptでこれらの要素を強化する予定がある場合は、スクリプトが異なるブラウザがこれらの要素を処理する方法と互換性があることを確認してください。

使用できるようなリソースに関する最新のブラウザ互換性情報を確認できますか? (caniuse.com)さまざまなブラウザにわたるこれらのHTML要素のサポートについて最新の状態を維持します。

以上が&lt;詳細&gt; and&lt; summary&gt; 折りたたみ可能なセクションを作成する要素?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート