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

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

ただいまの
回答率

89.71%

JavaScript(HTML&CSS)でマウスオーバーの中に画像を入れて、画像をアニメーションで動く様なソフトを作りたいです。

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 125

orang

score 1

前提・実現したいこと

JavaScript(HTML&CSS)でマウスオーバーの中に画像を入れて、画像をアニメーションで動く様なソフトを作っています。
初心者で既存のソースコードを使用し、作っています。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

<html>
 <head>

 <style>
.tooltip3{
    position: relative;
    cursor: pointer;
    display: inline-block;
}
.tooltip3 p{
    margin:0;
    padding:0;
}
.description3 {
    display: none;
    position: absolute;
    padding: 10px;
    font-size: 12px;
    line-height: 3em;
    color:#000 ;
    border-radius: 5px;
    background: #CCCCCC;
    width: 400px;
}
.description3:before {
    content: "";
    position: absolute;
    top: -24px;
    right: 60%;
    border: 15px solid transparent;
    border-top: 15px solid #CCCCCC;
    margin-left: -15px;
    transform: rotateZ(180deg);
}
.tooltip3:hover .description3{
    display: inline-block;
    top: 30px;
    left: 0px;
}
 </style>
 <style>
.box {
  width: 100px;
  height: 100px;
  background: #DEB887;
  animation: none running;
}

 </style>

 <style type="text/css">
 img.example1{
 width: 96px;
 height: 65px;
 float: left;
}
 </style>
</head> 


 <body>
<div class="tooltip3">
    <p>$fruit = "りんご";</p>
    <div class="description3"> 
  『りんご』を『fruit』の箱に代入

    <div class="box"></div>
    <figure class="img-flex-1">
      <img src="りんご.png" alt="[イラスト]" class="example1">
    </figure>

  </div>
</div>

<div class="tooltip3">
  <p>echo $fruit ;</p>
    <div class="description3">説明を入力してください。 </div>  

</div>
</body>

</html>

試したこと

画像を横並びにしたいのですが、他のサイトを見てコードを入れてみたのですができませんでした。
マウスオーバーの中に画像を入れることはできたのですが、
現状況は2つの画像が立て並びで下の画像が少しだけ右に動きました。

補足情報(FW/ツールのバージョンなど)

Windows7、メモ帳を使用して作っています。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • orang

    2020/01/16 22:42

    画像を横並びにする件は解決しました。
    後は、りんごを箱の中に入れるアニメーションを作るだけです。

    キャンセル

  • Lhankor_Mhy

    2020/01/17 10:04

    「りんごを箱の中に入れるアニメーション」とは具体的にはどのようなもので、どのような問題が発生していますか?

    結果(実際に起きたこと)を書きましょう
    https://teratail.com/help/question-tips#questionTips3-4-1

    エラーメッセージや実行ログをコピー&ペーストしましょう
    https://teratail.com/help/question-tips#questionTips3-4-2

    期待した処理結果を書きましょう
    https://teratail.com/help/question-tips#questionTips3-4-3

    キャンセル

  • orang

    2020/01/20 12:29

    横移動でりんごを動かそうと思いコードを入れたのですが、動きませんでした。img.example2に横移動のアニメーションをつけました。

    <html>
    <head>

    <style>
    .tooltip3{
    position: relative;
    cursor: pointer;
    display: inline-block;
    }
    .tooltip3 p{
    margin:0;
    padding:0;
    }
    .description3 {
    display: none;
    position: absolute;
    padding: 10px;
    font-size: 12px;
    line-height: 3em;
    color:#000 ;
    border-radius: 5px;
    background: #CCCCCC;
    width: 400px;
    }
    .description3:before {
    content: "";
    position: absolute;
    top: -24px;
    right: 60%;
    border: 15px solid transparent;
    border-top: 15px solid #CCCCCC;
    margin-left: -15px;
    transform: rotateZ(180deg);
    }
    .tooltip3:hover .description3{
    display: inline-block;
    top: 30px;
    left: 0px;
    }
    </style>

    <style type="text/css">
    img.example1{
    width: 96px;
    height: 80px;
    float: left;
    }
    .img-flex-1{
    position: relative;
    width: 600px;
    }
    .absolute {
    position: absolute; left: 0px; bottom: 0px
    color: #006400;
    }

    img.example2{
    width: 96px;
    height: 80px;
    float: left;
    transition: 1s;
    -webkit-transition: 1s;
    }

    .img-flex-2:hover{
    transform: translateX(300px);

    }
    </style>
    </head>


    <body>
    <div class="tooltip3">
    <p>$fruit = "りんご";</p>
    <div class="description3">
      『りんご』を『fruit』の箱に代入

    <figure class="img-flex-1">
    <img src="箱.png" alt="[イラスト]" class="example1">
    <figcaption class="absolute"><p>変数</p></figcaption>
    </figure>
    <figure class="img-flex-2">
    <img src="りんご.png" alt="[イラスト]" class="example2">
    </figure>

      </div>
    </div>

    <div class="tooltip3">
      <p>echo $fruit ;</p>
    <div class="description3">説明を入力してください。 </div>  

    </div>
    </body>

    </html>
    箱の中にりんごが入る結果になると思いました。

    キャンセル

回答 1

checkベストアンサー

+1

.img-flex-2{
transition: 1s;
}


と書くのがいいと思います。
が、実際には、りんごにマウスホバーしようとすると、.tooltip3からホバーが外れてしまいツールチップが消えてしまうので、りんごにホバーすることができません。

たとえば、「ツールチップが表示されると(りんごにホバーしなくても)りんごが横に動く」というように、フローを改善されてはいかがでしょうか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/01/21 21:20

    ありがとうございます。一度やって見ます。
    すみませんが、フローはどのようにすれば良いですか?

    キャンセル

  • 2020/01/22 09:19

    > フローはどのようにすれば良いですか?

    ここでいうフローはCSSの配置のフローではなくて、処理の流れのことです。わかりにくくてすみません。

    orangさんがどうしたいのか、によるかと思いますが、個人的には「ツールチップが表示されると(りんごにホバーしなくても)りんごが横に動く」という形に変えるのがいいのではないかと思います。

    キャンセル

  • 2020/01/22 14:57

    ありがとうございます。
    そうですね、ツールチップの方が良さそうですね。
    初めはりんごを箱の中にアーチ状に動かそうと思ったのですが、難しそうと思い、横に動かそうと思いました。

    キャンセル

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

  • ただいまの回答率 89.71%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる
  • トップ
  • JavaScriptに関する質問
  • JavaScript(HTML&CSS)でマウスオーバーの中に画像を入れて、画像をアニメーションで動く様なソフトを作りたいです。