シンプルで使いやすく、どんなサイトにも使えそうなアコーディオンメニューを作成しました。
色を変えるなり角丸にするなり、色々変えてお使いください。
もちろんレスポンシブ対応です。
※右側の「▼」は「Font Awesome」のものを使ってます。
目次
シンプルなアコーディオンメニュー
レスポンシブにも対応していますので、ご確認ください。
完成形はこちら
See the Pen accordion by yusuke-morioka (@yusuke-morioka) on CodePen.
コードはこちら
<!-- headタグ省略 -->
<body>
<input id="acd-check1" class="acd-check" type="checkbox">
<label class="acd-label" for="acd-check1">メニュー1</label>
<div class="acd-content">
<p>hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!
</p>
</div>
<input id="acd-check2" class="acd-check" type="checkbox">
<label class="acd-label" for="acd-check2">メニュー2</label>
<div class="acd-content">
<p>hello.world2!</p>
</div>
<input id="acd-check3" class="acd-check" type="checkbox">
<label class="acd-label" for="acd-check3">メニュー3</label>
<div class="acd-content">
<p>hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!hello.world!
</p>
</div>
<input id="acd-check4" class="acd-check" type="checkbox">
<label class="acd-label" for="acd-check4">メニュー4</label>
<div class="acd-content">
<p>hello.world2!</p>
</div>
</body>
@charset "UTF-8";
.acd-check {
display: none;
}
.acd-label {
padding: 10px 15px;
box-sizing: border-box;
background: #eee;
display: flex;
justify-content: space-between;
margin: 0 auto 5px;
width: 60%;
}
.acd-label::after {
display: flex;
align-items: center;
font-family: "Font Awesome 5 Free";
content: "\f0d7";
font-weight: 900;
transition: all 0.3s;
}
.acd-content {
height: 0;
opacity: 0;
transition: 0.3s;
visibility: hidden;
width: 60%;
padding: 0;
margin: 0 auto;
}
.acd-content p {
margin: 0;
padding: 0 20px;
word-break: break-all;
}
.acd-check:checked + .acd-label + .acd-content {
height: auto;
opacity: 1;
padding: 15px 0;
visibility: visible;
display: flex;
align-items: center;
word-break: break-all;
}
.acd-check:checked + .acd-label::after {
transform: rotate(180deg);
}
@media screen and (max-width: 960px) {
.acd-label {
width: 95%;
}
.acd-content {
width: 95%;
}
.acd-check:checked + .acd-label + .acd-content {
padding: 10px 0;
}
}
コピペで簡単!CSSで作るステップフロー4パターン【縦あり】
登録画面や購入画面、などでよく見る「ステップバー」を4種類つくりました。 すべてレスポンシブ対応なので、コピペしてお好みで装飾し、ご自由にお使いください。 パタ...
【コピペOK】LPで使える!Q&Aデザイン4パターン【CSS】
LPなどでよく見かける、Q&Aセクションの作り方です。 コピペしてお好みで色を変えるなど、ご自由にお使いください。 もちろんレスポンシブにも対応しています。 パ...
1992年生まれ|2020年10月フリーランスとして独立|Web制作、SEOライティングを軸に活動中|接客→生産管理→システム開発会社→現在|モリブログ運営。Web制作、フリーランスジャンルを中心に更新中。PV数は年間14万人以上||温泉、旅行、甘いものが好き。