3D / 103

Card flip

裏返して見せる
操作に合わせてカードを回転させ、裏面を見せます。

実際のHTML・CSSで描かれた見本です。

ラボで詳しく試す ↗

ひとつ試すなら

どこが変わるかを観察して、似た表現と見比べてみよう。

こんなときに

表と裏が対応する、少量の補足情報。

仕組みと使い方

裏面はbackface-visibilityで隠し、重なって見えるのを防ぎます。

裏返すflip回転カード
実装コードを見る
<style>
.sample{width:100%;height:100%;min-height:190px;display:grid;place-items:center;position:relative;overflow:hidden;box-sizing:border-box;font-family:Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;color:#20211d;background:#f1f0e9;padding:22px}.sample *{box-sizing:border-box}.sample button,.sample input,.sample summary{font:inherit}.sample button,.sample summary,.sample label{touch-action:manipulation}.sample :focus-visible{outline:3px solid #6050bf;outline-offset:5px}.sample small{font-size:10px;line-height:1.5}.sample .editable{margin:0}.sample svg{max-width:100%;height:auto}
.sample .flip{display:block;perspective:500px;cursor:pointer;width:164px;height:113px;position:relative}.sample input{position:absolute;opacity:0;width:100%;height:100%}.sample .card{display:block;width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .65s}.sample b{position:absolute;inset:0;display:grid;place-items:center;border-radius:12px;border:1px solid #222;backface-visibility:hidden;font-size:23px;background:#c9f537}.sample .back{background:#b8a0e3;transform:rotateY(180deg)}.sample input:checked+.card{transform:rotateY(180deg)}.sample input:focus-visible+.card{outline:3px solid #6050bf;outline-offset:5px}@media(prefers-reduced-motion:reduce){.sample .card{transition:none}}
</style>
<div class="sample">
<label class="flip"><input type="checkbox" aria-label="カードを裏返す"><span class="card"><b class="front">touch ↻</b><b class="back">hello!</b></span></label>
</div>