CSSのみのアコーディオンメニューを作成する方法は?
非表示のチェックボックスとCSSを使用してください。隣接する兄弟セレクター()と組み合わせたチェックされた擬似クラス()を制御するコンテンツディスプレイ。 2. HTML構造には、崩壊したアイテムごとに入力、ラベル、コンテンツDIVが含まれています。 3.最大高さの遷移を設定することにより、スムーズな拡張/崩壊アニメーション。 4.擬似要素を使用してオープン/クローズステータスアイコンを追加します。 5.無線タイプを使用してシングルオープンモードを実装しますが、チェックボックスを使用すると複数の開口部が可能になります。これは、JavaScriptを必要とせず、最新のブラウザーと互換性のあるインタラクティブな折りたたみ式メニューの実装です。
メニューに応じてCSSのみを作成することは、JavaScriptに依存せずにインタラクティブコンテンツを追加するのに最適な方法です。次のことを使用します:checked
)コンテンツの可視性を切り替えます。一歩一歩構築する方法は次のとおりです。

1。HTML構造
チェックボックス(またはラジオボタン)を使用して、クリーンなHTML構造から始めて、各アイテムを制御します。各セクションには、ラベル(クリック可能なヘッダーとして)とコンテンツDivが含まれます。
<div class = "accordion"> <div class = "accordion-item"> <入力型= "チェックボックス" id = "section1" name = "Accordion" /> <ラベル= "section1">セクション1 </label> <div class = "accordion-content"> <p>これは、セクション1のコンテンツです。</p> </div> </div> <div class = "accordion-item"> <入力型= "チェックボックス" id = "section2" name = "Accordion" /> <ラベル= "section2">セクション2 </label> <div class = "accordion-content"> <p>これはセクション2のコンテンツです。</p> </div> </div> <div class = "accordion-item"> <入力型= "チェックボックス" id = "section3" name = "Accordion" /> <ラベル= "section3">セクション3 </label> <div class = "accordion-content"> <p>これはセクション3のコンテンツです。</p> </div> </div> </div>
一度に1つのセクションのみを開く必要がある場合は、
checkbox
の代わりにtype="radio"
を使用します。
2。基本的なCSSスタイリング
きれいで機能的な見た目に応じてスタイルをスタイルします。チェックボックス入力を非表示にし、クリック可能なヘッダーとしてラベルをスタイリングします。
.accordion { 幅:100%; 最大幅:600px; マージン:0 Auto; フォントファミリー:arial、sans-serif; } .ACCORDION-ITEM { ボーダーボトム:1PX SOLID #DDD; } .accordion-itemラベル{ 表示:ブロック; パディング:15px; 背景色:#f5f5f5; font-weight:bold; カーソル:ポインター; ユーザーセレクト:なし; 遷移:バックグラウンドカラー0.3s容易さ。 } .ACCORDION-ITEMラベル:Hover { 背景色:#e9e9e9; } .accordion-content { Max-Height:0; オーバーフロー:隠し; 遷移:最大0.3秒の容易さ、パディング0.3s容易さ。 パディング:0 15px; バックグラウンドカラー:#fff; } .ACCORDION-CONTENT P { マージン:10px 0; }
3。CSSでコンテンツを切り替えます
使用:checked
セレクターと
(隣接する兄弟)コンバイナーチェックボックスがチェックされたときにコンテンツを拡張します。

#section1:checked label .accordion-content、 #セクション2:checked label .accordion-content、 #セクション3:checked label .accordion-content { Max-Height:200px; パディング:15px; }
max-height
トリックにより、スムーズな開閉が可能になります。コンテンツに適合するのに十分高く設定しますが、長いアニメーションを避けるには高すぎません。
4.オプション:開いた/閉じるアイコンを追加します
擬似要素を使用して、小さな矢印またはプラス/マイナスアイコンを追加できます。
.ACCORDION-ITEMラベル::後{ コンテンツ: ' '; フロート:そうです; } #セクション1:チェックラベル::後、 #セクション2:チェックラベル::後、 #section3:checked label :: afted { コンテンツ: ' - '; }
これにより、ユーザーは各セクションの状態に関する視覚的な手がかりを得ることができます。
覚えておくべき重要なポイント
- チェックボックスは、兄弟セレクターが動作するためにHTMLのラベルとコンテンツの前に来る必要があります。
- ディスプレイの代わりに
max-height
を使用しますdisplay: none
。 - ラジオ入力(
type="radio"
)では、一度に1つの開いたアイテムのみが許可されます。チェックボックスでは、複数のオープンアイテムが可能になります。 - アクセシビリティ:後で最小限のJSで強化する場合は
aria-expanded
およびaria-controls
属性の追加を検討してください。
基本的に、それは相互作用をシミュレートするためのフォーム入力とCSSセレクターの巧妙な使用です。 JavaScriptは不要であり、すべての最新のブラウザで動作します。
以上がCSSのみのアコーディオンメニューを作成する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

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

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

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

バックドロップフィルターは、要素の背後にあるコンテンツに視覚効果を適用するために使用されます。 1。バックドロップフィルター:Blur(10px)およびその他の構文を使用して、つや消しガラス効果を実現します。 2。ぼやけ、明るさ、コントラストなどの複数のフィルター関数をサポートし、重ねることができます。 3.ガラスカードの設計でよく使用されており、要素が背景と重複するようにする必要があります。 4.最新のブラウザには優れたサポートがあり、@Supportsを使用してダウングレードソリューションを提供できます。 5。パフォーマンスを最適化するために、過度のぼかしと頻繁な再描画を避けてください。この属性は、要素の背後にコンテンツがある場合にのみ有効になります。

Theaspect-ratioCSSpropertydefinesthewidth-to-heightratioofanelement,ensuringconsistentproportionsinresponsivedesigns.1.Itisapplieddirectlytoelementslikeimages,videos,orcontainersusingsyntaxsuchasaspect-ratio:16/9.2.Commonusecasesincludemaintainingres

@keyframesbouncewith0%、100%attranslatey(0)および50%attranslatey(-20px)tocreateabasicbounce.2.applytheanimation to nelementusinginimation:Bounce0.6 sease-inutinfiniteforsmoth.

The:emptypseudo-classselecteselementswithnochildrenorcontent、includingspacesorcomments、aonterlytrulyelementslikematchit;

1. Binanceは、膨大なトランザクションボリュームと豊富な取引ペアで知られています。多様な取引モデルと完璧なエコシステムを提供します。また、SAFUファンドと複数のセキュリティテクノロジーを通じてユーザー資産のセキュリティを保証し、準拠した運用を非常に重要にします。 2。OKXOUYIは、幅広いデジタル資産取引サービスと統一された取引アカウントモデルを提供し、Web3フィールドを積極的に展開し、厳格なリスク管理とユーザー教育を通じてトランザクションセキュリティと経験を改善します。 3。GATE.IOセサミはドアを開き、通貨速度と豊富な通貨を備え、多様な取引ツールと付加価値サービスを提供し、複数のセキュリティ検証メカニズムを採用し、ユーザーの信頼を強化するための資産準備を遵守します。 4。Huobiは、深い業界の蓄積を備えたワンストップのデジタル資産サービスを提供し、強いトランザクションの深さと

非表示のチェックボックスとCSSを使用してください。隣接する兄弟セレクター()と組み合わせたチェックされた擬似クラス()を制御するコンテンツディスプレイ。 2. HTML構造には、崩壊したアイテムごとに入力、ラベル、コンテンツDIVが含まれています。 3.最大高さの遷移を設定することにより、スムーズな拡張/崩壊アニメーション。 4.擬似要素を使用してオープン/クローズステータスアイコンを追加します。 5.無線タイプを使用してシングルオープンモードを実装しますが、チェックボックスを使用すると複数の開口部が可能になります。これは、JavaScriptを必要とせず、最新のブラウザーと互換性のあるインタラクティブな折りたたみ式メニューの実装です。

CSSCLIP-PATHを使用して、追加の画像や複雑なSVGなしでブラウザに非長方形の形状を作成します。 2。一般的な形状関数には、INSET()、Circle()、Ellipse()、Polygon()が含まれます。ここで、ポリゴン()は、ダイアログバブルなどの創造的なデザインを作成するのに適した座標ポイントを定義することでカスタムシェイプを実装します。 3.クリップパスは、ホバリング中のサークル拡張など、CSS遷移またはキーフレームアニメーションを通じて動的効果を達成できますが、同じタイプの間隔アニメーションと頂点の数のみをサポートします。 4.応答性とアクセシビリティに注意して、サポートされていないときにコンテンツがまだ利用可能であることを確認し、テキストが読み取り可能であり、過度の収穫を避け、ポリゴン頂点の数を制御してパフォーマンスを最適化します。同時に、それを知る必要があります

バックグラウンドイメージとバックグラウンドクリップ:テキストを使用して、CSSテキストグラデーション効果を達成します。 2. [Webkit-Background-Clip:Text and -Webkit-Text-Fill-Color:透過性]を設定する必要があります。 3.線形または放射状の勾配をカスタマイズすることができ、視覚効果を改善するために太字または大きなテキストを使用することをお勧めします。 4.サポートされていない環境の代替色として色を設定することをお勧めします。 5.代替案は、より複雑な効果を達成するために-webkit-mask-imageを使用できますが、主に高度なシナリオに適しています。この方法はシンプルで、互換性と視覚が良好です
