Result
detailsタグでFAQコンテンツっぽいやつを作るサンプルです
JSも使わずCSSの力業も不要なのでコードもスッキリ見やすいですね
例によってIEでは使えないHTMLタグですが、便利には違いないですね
summaryにoutline: none;
を付けないとクリック時にボーダーが表示されてしまいます。
css
summary { display : block ; outline : none ; } summary:before { /*矢印アイコンを付与*/ display : inline-block ; content : "›" ; margin-right : 0.5 rem; font-weight : bold ; font-size : 1 rem; transition : all 300 ms ease; } /*答え部分が開いている場合の処理*/ details[open] summary { color : red ; transition : all 300 ms ease; } details[open] p { animation : openDetail 400 ms ease; background : #f9f9f9 ; } details[open] summary::before { transform : rotate ( 90 deg); } @keyframes openDetail { /*アニメーション設定*/ 0% { opacity : 0 ; background : white ; transform : translateY ( 0% ); } 50% { transform : translateY ( 3% ); } 100% { opacity : 1 ; background : #f9f9f9 ; transform : translateY ( 0% ); } } |
html
< details role = "group" > < summary role = "button" aria-expanded = "false" >< strong >hoge?</ strong ></ summary > < p >hogehogehogehoge hogehogehogehogehoge hogehogehogehogehoge hogehogehogehogehoge </ p > </ details > |
can i use
details及びsummaryタグのブラウザサポート状況です