サイト名 Css geek

マウスオーバーでボタンの背景色を変える

マウスオーバーでボタンの背景色を変化させるのに欠かせないのは手軽に使えるtransitionです。背景色の変化で文字が消えないよう z-index で階層を指定しています。

つい忘れがちですが、z-index は要素にposition(static以外)を設定しておかないとその効力が発揮できません。そのため常にpositionと抱き合わせで指定する必要があります。

See the Pen Hover Effect – Button ① by Basilico (@Basilico) on CodePen.

Button-3 の背景色を変えているのは、::before::afterで準備した疑似要素のボーダー線です。::beforeborder-bottomを、::afterborder-topを持たせ、ボタンを隠せるほどの太さにします。そこに同様に太幅のborder-rightborder-lefttransparentにしてそれぞれ重ね、斜線を作り出しています。transparentはカラーを透明にさせるので、重ねることで他で指定したカラーの打ち消しなどに利用できます。

Button-5 は、疑似要素をボタンより一回り大きくして四つ角に丸みを持たせ、bodyの背景色と同色にしてボタンの上に被せています。それをtransformで回転させつつ上に移動させ、つかみどころのない背景色の変化を出しています。