質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

hover

これは、HTMLの 擬似クラス[hover]に関するタグです。Hoverは与えられた要素へマウスカーソルを置くことを意味します。また、タッチ可能なデバイスでユーザーが要素へタッチすることをHoverと呼ぶ場合もあります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

769閲覧

疑似要素を用いてアニメーションを実装しているボタン本体に背景色を設定したい

maturyo

総合スコア7

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

hover

これは、HTMLの 擬似クラス[hover]に関するタグです。Hoverは与えられた要素へマウスカーソルを置くことを意味します。また、タッチ可能なデバイスでユーザーが要素へタッチすることをHoverと呼ぶ場合もあります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2020/01/10 07:04

編集2020/01/10 07:18

html

1<a class="button" href="./newsall.html">MORE</a>

css

1.button { 2 position: relative; 3 display: block; 4 width: 160px; 5 height: 40px; 6 margin: 50px auto 0 auto; 7 border: 2px solid #010001; 8 color: #333; 9 text-align: center; 10 text-decoration: none; 11 background-color: none; 12 transition: .3s; 13 overflow: hidden; 14 line-height: 35px; 15 border-radius: 20px; 16} 17 18.button::before { 19 position: absolute; 20 top: 0; 21 left: 0; 22 z-index: -1; 23 content: ''; 24 width: 120%; 25 height: 100%; 26 background: #010001; 27 transform-origin: right top; 28 transform: skewX(-30deg) scale(0, 1); 29 transition: transform .3s; 30} 31 32.button:hover { 33 color: white; 34} 35 36.button:hover::before { 37 transform-origin: left top; 38 transform: skewX(-30deg) scale(1, 1); 39}

疑似要素を用いてボタンにマウスオーバー時のアニメーションを、実装しているのですがボタン自身に背景色を設定できなくて困っています。
よろしければ実装方法を、ご教授お願いします。
よろしくおねがいします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

html

1<a class="button" href="./newsall.html"><span>MORE</span></a>

css

1.button { 2 position: relative; 3 display: block; 4 width: 160px; 5 height: 40px; 6 margin: 50px auto 0 auto; 7 border: 2px solid #010001; 8 color: #333; 9 text-align: center; 10 text-decoration: none; 11 background-color: #eee; 12 transition: .3s; 13 overflow: hidden; 14 line-height: 35px; 15 border-radius: 20px; 16} 17.button span { 18 position: absolute; 19 z-index: 1; 20 left: 0; 21 right: 0; 22} 23.button::before { 24 position: absolute; 25 top: 0; 26 left: 0; 27 content: ''; 28 width: 120%; 29 height: 100%; 30 background: #010001; 31 transform-origin: right top; 32 transform: skewX(-30deg) scale(0, 1); 33 transition: transform .3s; 34 z-index: 1; 35} 36 37.button:hover { 38 color: white; 39} 40 41.button:hover::before { 42 transform-origin: left top; 43 transform: skewX(-30deg) scale(1, 1); 44}

でどうでしょう?

投稿2020/01/10 07:30

編集2020/01/10 07:51
achamaru

総合スコア71

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maturyo

2020/01/10 07:38

ありがとうございます解決しました。 cssでばかりどうこうしようとしていてhtmlをいじって絶対配置で要素を表に出す方法までに頭が回りませんでした。 勉強になりました。 感謝します。
achamaru

2020/01/10 07:52

解決して良かったです! .button::beforeにz-indexの指定を2つ入れてしまってました。 z-index:-1のほうは削除してください。 よろしくお願いします
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問