トップページのメインビジュアルの読み込みがおかしい。
トップページはフルスクリーンです。animationで4枚の画像が順番に浮き出るような
仕掛けに設定しています。そのうちの1枚目は背景画像です。
やっと完成したと思ったのですが、検索してそのページをクリックすると、1秒ほどですが
background: #00ABEB;だけが映し出され、その後に設定した画像のアニメーションが始まってしまいます。
画像の重さが原因ではないかと圧縮し直してみたり、アニメーションの時間を変えてみたり
してみたのですが、改善しないままになっています。
何か良案はありませんでしょうか。よろしくお願い致します。
html
1<header> 2 <h1 id="logo"><img></h1> 3<div class="catchcopy"><p>キャッチコピー</p></div> 4<aside class="object-fit" id="mainimg"> 5 <img class="slide1"><img class="slide2"><img class="slide3"></aside></header> 6 7 8 9
css
1header { 2 height: 70px; 3 background: #00ABEB;(他ページで必要なため) 4 position: relative; 5} 6 7 8.catchcopy { 9 z-index: 1; 10 position: absolute; 11 top: 50%; 12 left: 50%; 13 transform: translateY(-50%) translateX(-50%); 14 -webkit- transform: translateY(-50%) translateX(-50%); 15 16} 17 18#mainimg { 19 clear: both; 20 position: fixed; /*スクロールしても固定表示させる指定*/ 21 top: 0px; 22 width: 100%; 23 background: url("../images/img.jpg") no-repeat center center/cover; 24 /*最初の1枚目(土台画像)*/ 25 26} 27 28/*3枚画像の共通設定*/ 29.slide1,.slide2,.slide3 { 30 animation-duration: 30s; /*実行する時間。「s」は秒の事。*/ 31 animation-iteration-count:infinite; /*実行する回数。「infinite」は無限に繰り返す意味。*/ 32 position: absolute;left:0px;top:0px;width: 100%;height: 100%; 33 animation-fill-mode: both; 34 animation-timing-function: linear; 35 animation-delay: 3s; 36} 37/*1枚目*/ 38.slide1 { 39 animation-name: slide1; /*上で設定しているキーフレーム(keyframes)の名前*/ 40} 41/*2枚目*/ 42.slide2 { 43 animation-name: slide2; /*上で設定しているキーフレーム(keyframes)の名前*/ 44} 45 46.slide3 { 47 animation-name: slide3; /*上で設定しているキーフレーム(keyframes)の名前*/ 48} 49/*1枚目*/ 50@keyframes slide1 { 51 0% {opacity: 0; transform: scale(1);} 52 10% {opacity: 1;} 53 40% {transform: scale(1.1);} 54 50% {opacity: 1;} 55 60% {opacity: 0;} 56 100% {opacity: 0;} 57} 58/*2枚目*/ 59@keyframes slide2 { 60 0% {opacity: 0;} 61 25% {opacity: 0; transform: scale(1);} 62 35% {opacity: 1;} 63 65% {transform: scale(1.1);} 64 75% {opacity: 1;} 65 85% {opacity: 0;} 66 100% {opacity: 0;} 67} 68/*3枚目*/ 69@keyframes slide3 { 70 0% {opacity: 0;} 71 50% {opacity: 0; transform: scale(1);} 72 60% {opacity: 1;} 73 80% {opacity: 1;} 74 90% {opacity: 0; transform: scale(1.1);} 75 100% {opacity: 0;} 76} 77
回答1件
あなたの回答
tips
プレビュー