[パーツ]Q&A カテゴリーごとにタブ分けしたQ&Aデザイン

CSS HTML
 
 

カテゴリーごとにタブ分けしたQ&Aデザイン

カテゴリーごとにタブ分けしたQ&Aデザインです。
QA自体はアコーディオンメニューを利用したものです。
Q&Aが多い時などに便利です。

browser:  ✔︎ ✔︎ ✔︎ 
ニャン易度 
答えテキスト 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.

説明テキスト 説明テキスト 説明テキスト

答えテキスト 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.
答えテキスト 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_qa05">
  <input id="cp_conttab1" type="radio" name="tabs" checked>
  <label for="cp_conttab1" class="cp_tabitem">category</label>
  <input id="cp_conttab2" type="radio" name="tabs">
  <label for="cp_conttab2" class="cp_tabitem">category</label>
  <input id="cp_conttab3" type="radio" name="tabs">
  <label for="cp_conttab3" class="cp_tabitem">category</label>
  <input id="cp_conttab4" type="radio" name="tabs">
  <label for="cp_conttab4" class="cp_tabitem">category</label>
  <div id="cp_content1">
    <div class="cp_qain">
      <div class="cp_actab">
        <input id="cp_tabfour051" type="checkbox" name="qatab">
        <label for="cp_tabfour051">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>
      <div class="cp_actab">
        <input id="cp_tabfour052" type="checkbox" name="qatab">
        <label for="cp_tabfour052">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>
      <div class="cp_actab">
        <input id="cp_tabfour053" type="checkbox" name="qatab">
        <label for="cp_tabfour053">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>
    </div>
  </div>
  <div id="cp_content2">
    <p>説明テキスト 説明テキスト 説明テキスト</p>
    <div class="cp_qain">
      <div class="cp_actab">
        <input id="cp_tabfour054" type="checkbox" name="qatab">
        <label for="cp_tabfour054">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>

      <div class="cp_actab">
        <input id="cp_tabfour055" type="checkbox" name="qatab">
        <label for="cp_tabfour055">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>
    </div>
  </div>
  <div id="cp_content3">
    <p>説明テキスト 説明テキスト 説明テキスト</p>
    <div class="cp_qain">
      <div class="cp_actab">
        <input id="cp_tabfour056" type="checkbox" name="qatab">
        <label for="cp_tabfour056">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>
      <div class="cp_actab">
        <input id="cp_tabfour057" type="checkbox" name="qatab">
        <label for="cp_tabfour057">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>
    </div>
  </div>
  <div id="cp_content4">
    <p>説明テキスト 説明テキスト 説明テキスト</p>
    <div class="cp_qain">
      <div class="cp_actab">
        <input id="cp_tabfour058" type="checkbox" name="qatab">
        <label for="cp_tabfour058">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>
      <div class="cp_actab">
        <input id="cp_tabfour059" type="checkbox" name="qatab">
        <label for="cp_tabfour059">質問テキスト</label>
        <div class="cp_actab-content">答えテキスト</div>
      </div>
    </div>
  </div>
</div>
.cp_qa05 *, .cp_qa05 *:before, .cp_qa05 *:after {
  font-family: 'FontAwesome', sans-serif;
}
.cp_qa05 {
  margin: 0 auto;
  background: #ffffff;
}
.cp_qa05 input {
  display: none;
}
/* カテゴリー */
.cp_qa05 #cp_content1,
.cp_qa05 #cp_content2,
.cp_qa05 #cp_content3,
.cp_qa05 #cp_content4 {
  display: none;
  padding: 20px 0 0;
  border-top: 1px solid #dddddd;
}
.cp_qa05 label.cp_tabitem {
  display: inline-block;
  margin: 0 0 -1px;
  padding: 15px 15px;
  text-align: center;
  color: #bbbbbb;
  border: 1px solid transparent;
}
.cp_qa05 label.cp_tabitem:before {
  margin-right: 10px;
}
.cp_qa05 label.cp_tabitem[for*='1']:before { content: '\f2bd'; }
.cp_qa05 label.cp_tabitem[for*='2']:before { content: '\f15c'; }
.cp_qa05 label.cp_tabitem[for*='3']:before { content: '\f0f4'; }
.cp_qa05 label.cp_tabitem[for*='4']:before { content: '\f001'; }
.cp_qa05 label.cp_tabitem:hover {
  cursor: pointer;
  color: #888888;
}
.cp_qa05 input:checked + label {
  color: #555555;
  border: 1px solid #dddddd;
  border-bottom: 1px solid #ffffff;
}
/* --ブロックのバーの色 */
.cp_qa05 input:checked + label[for*='1'] {
  border-top: 5px solid #00BCD4;
}
.cp_qa05 input:checked + label[for*='2'] {
  border-top: 5px solid #FF5722;
}
.cp_qa05 input:checked + label[for*='3'] {
  border-top: 5px solid #03A9F4;
}
.cp_qa05 input:checked + label[for*='4'] {
  border-top: 5px solid #E91E63;
}
@media screen and (max-width: 650px) {
  .cp_qa05 label.cp_tabitem {
    font-size: 0;
  }
  label:before {
    font-size: 18px;
    margin: 0;
  }
}
@media screen and (max-width: 400px) {
  .cp_qa05 label.cp_tabitem {
    padding: 15px;
  }
  .cp_qa05 label.cp_tabitem:before {
    margin-right: 0px;
  }
}
/* QAブロック */
.cp_qa05 #cp_conttab1:checked ~ #cp_content1,
.cp_qa05 #cp_conttab2:checked ~ #cp_content2,
.cp_qa05 #cp_conttab3:checked ~ #cp_content3,
.cp_qa05 #cp_conttab4:checked ~ #cp_content4 {
  display: block;
}
.cp_qa05 .cp_qain {
  overflow-x: hidden;
  margin: 0 auto;
  color: #333333;
}
.cp_qa05 .cp_qain .cp_actab {
  padding: 20px 0;
  border-bottom: 1px dotted #cccccc;
}
/* 質問 */
.cp_qa05 .cp_qain label {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  padding: 10px 10px 0 48px;
  cursor: pointer;
}
/* +アイコン */
.cp_qa05 .cp_qain .cp_plus {
  font-size: 2em;
  line-height: 100%;
  position: absolute;
  z-index: 5;
  margin-top: 3px;
  margin-left: 10px;
  transition: 0.2s ease;
}
/* 答え */
.cp_qa05 .cp_qain .cp_actab-content {
  position: relative;
  overflow: hidden;
  height: 0;
  margin: 0 10px 0 48px;
  padding: 14px 0;
  transition: 0.4s ease;
  opacity: 0;
}
/* 質問を開いた時の仕様 */
.cp_qa05 .cp_qain .cp_actab input[type=checkbox]:checked ~ .cp_actab-content {
  height: auto;
  opacity: 1;
}
/* 質問をクリックした時の▼アイコンの動き */
.cp_qa05 .cp_qain .cp_actab input[type=checkbox]:checked ~ .cp_plus {
  transform: rotate(45deg);
}

copypet.jp

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

More Info

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