この記事の例では、jqueryをベースにしたアコーディオン画像表示エフェクトの実装方法を説明します。皆さんの参考に共有してください。具体的な実装方法は以下の通りです。 コード実行時の効果は次のとおりです: index.html ページのコードは次のとおりです: コードをコピー コードは次のとおりです: jquery に基づいた一項のハンド风琴画像表示効果デモ <br /> ディビジョン<br /> {<br /> -moz-box-sizing: border-box;<br /> ボックスのサイズ設定: ボーダーボックス;<br /> }<br /> <br /> html、本文、.page-container<br /> {<br /> 高さ: 100%;<br /> オーバーフロー: 非表示;<br /> }<br /> <br /> .page-container<br /> {<br /> -webkit-transition: パディング 0.2 秒イーズイン;<br /> トランジション: パディング 0.2 秒イーズイン;<br /> パディング: 80px;<br /> }<br /> .page-container.opened<br /> {<br /> パディング: 0;<br /> }<br /> .page-container.opened .flex-container .country:not(.active)<br /> {<br /> 不透明度: 0;<br /> -webkit-flex: 0;<br /> -ms-flex: 0;<br /> フレックス: 0;<br /> }<br /> .page-container.opened .flex-container .country:not(.active) div<br /> {<br /> 不透明度: 0;<br /> }<br /> .page-container.opened .flex-container .active:after<br /> {<br /> -webkit-filter: グレースケール(0%) !重要;<br /> フィルター: グレースケール(0%) !重要;<br /> }<br /> <br /> .flex-container<br /> {<br /> 表示: -webkit-flex;<br /> 表示: -ms-flexbox;<br /> 表示: フレックス;<br /> 高さ: 100%;<br /> }<br /> @media all と (最大幅: 900px)<br /> {<br /> .flex-container<br /> {<br /> -webkit-flex-direction: 列;<br /> -ms-flex-direction: 列;<br /> フレックス方向: 列;<br /> }<br /> }<br /> <br /> .国<br /> {<br /> 位置: 相対;<br /> -webkit-flex-grow: 1;<br /> -ms-flex-positive: 1;<br /> flex-grow: 1;<br /> -webkit-flex: 1;<br /> -ms-flex: 1;<br /> フレックス: 1;<br /> -webkit-transition: 0.5 秒のイーズインアウト;<br /> トランジション: 0.5 秒イーズインアウト;<br /> カーソル: ポインタ;<br /> font-family: "Bree Serif" 、セリフ;<br /> text-align: 中央;<br /> 色: #fff;<br /> フォントサイズ: 22px;<br /> text-shadow: 0 0 3px #000;<br /> }<br /> .country div<br /> {<br /> 位置: 絶対;<br /> 幅: 100%;<br /> z インデックス: 10;<br /> トップ: 50%;<br /> text-align: 中央;<br /> -webkit-transition: 0.1 秒;<br /> 遷移: 0.1 秒;<br /> -webkit-transform:translateY(-50%);<br /> -ms-transform:translateY(-50%);<br /> 変換:translateY(-50%);<br /> -webkit-filter: なし;<br /> フィルター: なし;<br /> }<br /> .country:after<br /> {<br /> 内容: " ";<br /> 位置: 絶対;<br /> 上: 0;<br /> 左: 0;<br /> 右: 0;<br /> 下: 0;<br /> 背景サイズ: カバー;<br /> -webkit-transition: 0.5 秒のイーズインアウト;<br /> トランジション: 0.5 秒イーズインアウト;<br /> -webkit-filter: グレースケール(100%);<br /> フィルター: グレースケール(100%);<br /> }<br /> .country:ホバー<br /> {<br /> -webkit-flex-grow: 6;<br /> -ms-flex-positive: 6;<br /> flex-grow: 6;<br /> }<br /> .country:hover:after<br /> {<br /> -webkit-filter: グレースケール(0%);<br /> フィルター: グレースケール(0%);<br /> }<br /> @media all と (最大幅: 900px)<br /> {<br /> .国<br /> {<br /> 高さ: 自動;<br /> }<br /> }<br /> <br /> .netherlands:after<br /> {<br /> background-image: url("Netherlands.png");<br /> background-position: center;<br /> }<br /> <br /> .belgium:after<br /> {<br /> background-image: url("belgium-307_3.jpg");<br /> background-position: center;<br /> }<br /> <br /> .france:after<br /> {<br /> background-image: url("30.jpg");<br /> background-position: center;<br /> }<br /> <br /> .germany:after<br /> {<br /> background-image: url("vacation.jpg");<br /> background-position: center;<br /> }<br /> <br /> .england:after<br /> {<br /> background-image: url("england.jpg");<br /> background-position: center;<br /> }<br /> Netherlands Belgium France Germany England $('.country').click(function () { $(this).toggleClass('active'); $('.page-container').toggleClass('opened'); }); //@ sourceURL=pen.js