###前提・実現したいこと
sublimetextを使っています。
前提として、今回はhtml,cssのみで実装することが目標です。
そのため、jQuery等による解決方法の提示はご遠慮くださいますよう、お願いいたします。
実現したいこととしては、説明が難しいですがタイトルの通り、
カーソルを画像に合わせるとその画像が上に消えていき、
下にあるformが姿を現わす というアニメーションをつけたいです。
###発生している問題
現時点では、hover時に画像が上に動いて消えていってくれるようにはできています。 問題は、『カーソルを画像から離す前にhoverが解除されて、画像が元の位置に降りてきてしまう』 という点です。 本来であれば、このカーソルを画像の外に持ってきた際に、 hoverが解除されるように設定したいのですが。。。 何か解決策はありますでしょうか?
###該当のソースコード
html
1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="UTF-8"> 5 <meta http-equiv="Cache-Control" content="no-cache"> 6 <title>Week3課題</title> 7 <link rel="stylesheet" type="text/css" href="style.css"> 8 <link href="https://fonts.googleapis.com/css?family=Abel" rel="stylesheet"> 9 <script type="text/javascript" src="https://code.jquery.com/jquery-1.11.3.min.js"></script> 10 <script type="text/javascript" src="script.js"></script> 11</head> 12 13 14 15<body> 16 <section> 17 <div class="form-wrap"> 18 19 <form class="effect" method="post" action="mail.php"> 20 <div class="form-box"> 21 <label class="t-title">特別試写会<br>応募申し込みフォーム</label> 22 23 <p> 24 <br>お名前<br> 25 <input type="text" name="sei" maxlength="10" placeholder="姓"> 26 <input type="text" name="mei" maxlength="10" placeholder="名"> 27 </p><br> 28 <p> 29 性別<br> 30 <input type="radio" name="gender" value="male" checked>男性 31 <input type="radio" name="gender" value="female">女性 32 </p><br> 33 <p> 34 年齢<br> 35 <select name="age"> 36 <option value="under15">15歳未満</option> 37 <option value="15~18">15~18歳</option> 38 <option value="19~25" selected>19~25歳</option> 39 <option value="26~35">26~35歳</option> 40 <option value="36~45">36~45歳</option> 41 <option value="46~55">46~55歳</option> 42 <option value="over56">56歳以上</option> 43 </select> 44 </p><br> 45 <p> 46 電話番号<br> 47 <input type="text" name="ph-number" placeholder="例 090-1234-5678" size="16"> 48 </p> 49 <p> 50 Eメールアドレス<br> 51 <input type="text" name="email" placeholder="例 barack.obama@softbank.ne.jp" size="30"> 52 </p><br> 53 <p> 54 当試写会を知った媒体をお教えください。<br> 55 <input type="checkbox" name="media" value="twitter">Twitter 56 <input type="checkbox" name="media" value="facebook">Facebook 57 <input type="checkbox" name="media" value="TOHO">TOHOシネマofficialサイト 58 </p><br> 59 <p> 60 <button type="submit" name="submit" value="送信">Submit</button> 61 <button type="reset" name="reset" value="リセット">Reset</button> 62 </p> 63 </div> 64 </form> 65 </div> 66 <div class="move"> 67 <img class="letter" src="http://stat.ameba.jp/user_images/20130501/03/airmail-m/20/4d/j/o0800045312520591245.jpg"> 68 </div> 69 </section> 70 71 <div id="footer"> 72 <div class="footer-container"> 73 <table> 74 75 </table> 76 </div> 77 78 </div> 79 80 81</body> 82 83 84 85</html> 86
css
1* { 2 margin: 0; 3 padding: 0; 4} 5 6.form-wrap input[type=submitposition:] { 7 color: #7c7873; 8 text-shadow:0 1px 0 #fff; 9} 10 11 12form { 13 width: 60%; 14 margin: 0 auto; 15 background-image: url(http://free-photos-ls04.gatag.net/images/lgf01a201407121600.jpg); 16 font-family: 'Abel', YuMincho; 17 color: white; 18 background-repeat: none; 19 position: relative; 20 overflow: hidden; 21} 22 23label { 24 font-size: 20px; 25} 26 27.t-title { 28 29} 30 31textarea { 32 width: 300px; 33} 34 35textarea:focus, input[type=text]:focus { 36 background:rgba(255,255,255,.35); 37} 38 39.form-box { 40 width: 100%; 41 padding: 30px 0 30px 70px; 42 background-color: rgba(0,0,0,0.5); 43 box-sizing: border-box; 44} 45 46button { 47 background: #EEE; 48 color: #111; 49 box-shadow: 0px 0px 1px rgba(520,000,000,0.3),inset 1px 1px 5px rgba(000,000,520,1),inset -1px -1px 5px rgba(205,0,0,1); 50 width: 100px; 51 padding: 10px 0; 52 font-family: 'Abel'; 53 font-size: 15px; 54 cursor: pointer; 55} 56 57.letter { 58 position: absolute; 59 width: 819.59px; 60 height: 580px; 61 margin: -15px; 62 right: 288px; 63 top: 0; 64 cursor: pointer; 65 transition: 1.5s ease-in-out 0s; 66} 67 68 img:hover { 69 transform: translate(0,-600px); 70} 71 72#footer { 73 white-space: nowrap; 74 width: 100%; 75 text-align: center; 76 margin-right: auto; 77 margin-left: auto; 78 background-color: #000; 79 position: relative; 80} 81 82.footer-container { 83 padding: 30px 0; 84 max-width: 1000px; 85 height: 300px; 86 margin-right: auto; 87 margin-left: auto; 88}
###試したこと
transitionではなく、animationも使ってみましたが、ダメでした。
###補足情報(言語/FW/ツール等のバージョンなど)
現段階では、『transitionでtranslateを使って画像を上にずらして見えなくする』
という方法を取っていますが、
他により良い方法があれば、それも教えていただけるとありがたいです。
ただし、上にも記載した通り、今回はhtmlとcssだけで実装できる方法でお願いいたします。
よろしくお願いします。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/02 03:33
2016/09/02 04:53
2016/09/02 06:25