[パーツ]Q&A 質問をクリックすると答えが開くQ&Aデザインパート4

CSS HTML
 2018.02.13
 2018.03.20

質問をクリックすると答えが開くQ&Aデザイン

質問をクリックすると答えが開くQ&Aデザインパート3です。
アコーディオンメニューを利用したものです。
こちらは、QとAそれぞれをブロッキングしています。

browser:  65 11 20 10 
ニャン易度 

答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text.

答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text.

答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text. 答えテキスト answer text.

<div class="cp_qa">
<div class="cp_actab">
<input id="cp_tabfour041" type="checkbox" name="tabs">
<label for="cp_tabfour041"><span>質問テキスト</span></label>
<div class="cp_actab-content">
<p>答えテキスト</p>
</div>
</div>
<div class="cp_actab">
<input id="cp_tabfour042" type="checkbox" name="tabs">
<label for="cp_tabfour042"><span>質問テキスト</span></label>
<div class="cp_actab-content">
<p>答えテキスト</p>
</div>
</div>
<div class="cp_actab">
<input id="cp_tabfour043" type="checkbox" name="tabs">
<label for="cp_tabfour043"><span>質問テキスト</span></label>
<div class="cp_actab-content">
<p>答えテキスト</p>
</div>
</div>
</div>
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
font-family: 'FontAwesome', sans-serif;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.cp_qa .cp_actab {
position: relative;
overflow: hidden;
width: 100%;
margin: 0 0 1em 0;
color: #ffffff;
}
.cp_qa .cp_actab input {
position: absolute;
opacity: 0;
}
/* 質問 */
.cp_qa .cp_actab label {
line-height: 1.6em;
position: relative;
display: block;
margin: 0 0.5em 0.5em 2em;
padding: 1em 0 2em 0;
cursor: pointer;
border-radius: 0.3em;
background: #ff5722;
box-shadow: 0 1px 2px 0 rgba(0,0,0,0.3);
}
.cp_qa .cp_actab label span {
display: block;
padding: 0 2em 1em 2em;
border-bottom: 1px solid #ffffff;
}
/* --?アイコン */
.cp_qa .cp_actab label::before {
font-size: 2em;
position: absolute;
z-index: 99;
top: 0.5em;
left: -1em;
padding: 0 0.5em;
content: '\f128';
border: 3px solid #ffffff;
border-radius: 50%;
background: #ff5722;
display: inline-block;
width: 1.8em;
height: 1.8em;
line-height: 1.8em;
}
/* --▼アイコン */
.cp_qa .cp_actab label::after {
font-size: 1em;
font-weight: normal;
line-height: 1em;
position: absolute;
right: 0;
bottom: 1em;
content: '\25BC';
display: inline-block;
width: 100%;
height: 1em;
padding: 0.5em;
text-align: right;
-webkit-transition: all 0.5s ease;
transition: all 0.5s ease;
}
/* 答え */
.cp_qa .cp_actab .cp_actab-content {
position: relative;
overflow: hidden;
max-height: 0;
margin: 0 0 0.5em 0;
padding: 0 0 0 5em;
-webkit-transition: max-height 0.5s ease;
transition: max-height 0.5s ease;
color: #ffffff;
}
/* --!アイコン */
.cp_qa .cp_actab .cp_actab-content::before {
font-size: 1.5em;
position: absolute;
z-index: 99;
top: calc(50% - 0.9em);
left: 2.5em;
padding: 0 0.6em;
content: '\f12a';
color: #ffffff;
border: 3px solid #ffffff;
border-radius: 50%;
background: #2196f3;
width: 1.8em;
height: 1.8em;
line-height: 1.8em;
}
.cp_qa .cp_actab .cp_actab-content p {
margin: 0.5em 0.5em 0.5em 0;
padding: 1em 1em 1em 3em;
border-radius: 0.3em;
background: #2196f3;
box-shadow: 0 1px 2px 0 rgba(0,0,0,0.3);
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
max-height: 40em;
}
/* 質問をクリックした時の▼アイコンの動き */
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
bottom: 0em;
-webkit-transform: rotateX(180deg);
transform: rotateX(180deg);
}

copypet.jp

CSS3などで新たに追加された要素・装飾方法など、日々コードを書いていないと忘れてしまったり、ささっとプロトタイプを作る時などちょっとしたことに時間をかけている暇はない。そんな時に「あ〜、あれストックしときゃよかったなぁ」って困った自分用のストックブログです。カスタマイズなどがしやすいよう、昨今のweb制作に取り入れられる一般的なコードを中心に掲載しています。

More Info

こんな記事はいかがですか?