下記のように、ボックスに対して
マウスオーバーしたときに、ボックスの輪郭線をアニメーションで描くようなCSSを作りました。
疑似要素であるhoverを使っているため、このアニメーションを行う条件はマウスオーバーのみになっていますが、
スクロールをして該当箇所が表示された際にアニメーションを行いたいと考えていますが、調べていてもやり方がわかりませんでした。
現在は疑似要素を使っていますが、実現可能であれば疑似要素以外でも大丈夫です。
HTML
1<div class="box"></div>
SCSS
1div{ 2 width:400px; 3 height:400px; 4 background:#888; 5 display:block; 6 position:relative; 7 8 &::before { 9 content:""; 10 width:2px; 11 height:0px; 12 position: absolute; 13 display:block; 14 bottom:0; 15 right:0; 16 transition:all .5s ease; 17 background-color: black; 18 z-index:5; 19 } 20 21 &::after { 22 content:""; 23 width:0px; 24 height:2px; 25 position: absolute; 26 display:block; 27 bottom:0; 28 left:0; 29 transition:all .5s ease; 30 background-color: black; 31 z-index:5; 32 } 33 34 &:hover { 35 &::before { 36 height:calc(100%+1px); 37 height:100%; 38 39 } 40 &::after { 41 width:calc(100%+1px); 42 width:100%; 43 } 44 } 45}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。