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

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

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

JSF (JavaServer Faces)とは、JavaベースのWebアプリケーションフレームワークの一つです。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

CSS

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

Q&A

0回答

1434閲覧

iOSで最初だけ画面が真っ白になる

TITO_T

総合スコア2

JSF

JSF (JavaServer Faces)とは、JavaベースのWebアプリケーションフレームワークの一つです。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

CSS

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

0グッド

1クリップ

投稿2020/08/21 01:34

編集2020/08/21 02:49

Webサイトの構築をしており、アニメーション処理を行いました(Scrollmagic.js)。
パソコン上からレスポンシブで検証した際は問題なく全ての動作が行われていたのですが、

iphoneの実機でのテストとなると最初の画面だけ真っ白になってしまいました。
ある程度スクロールして元の場所に戻ると問題なくしっかり要素が表示されていますし、再度下にスクロールすると正常に動きます。

最初だけなぜか真っ白なのです。Androidではこれは起こりませんでしたのでiOSのみの現象です。
ちなみに、検証ツールでみましたところ要素自体は存在しています。
ただなぜかopacityを調整してもdisplayをいじってみても画面に表示されません。

原因として考えられるものを教えていただけますと幸いです。

HTML

1 <header class="head-hero" id="top"> 2 <span id="trigger"></span> 3 <div class="container"> 4 <!-- SVG --> 5 <div class="svg-container" > 6 <svg id="svgVideo" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1440 1080" width="1440px" height="1080px" preserveAspectRatio="xMidYMid slice"> 7 <defs> 8 <!-- Mask --> 9 <mask id="mask" x="0" y="0" width="1480" height="1080" > 10 <rect x="0" y="0" width="1480" height="1080" class="svgVideo_rect"/> 11 <text x="37.5%" y="6.1em" class="pc-only">X</text> 12 13 </mask> 14 </defs> 15 <rect x="0" y="0" width="1480" height="1080" class="upper_rect"/> 16 </svg> 17 </div> 18 <div class="video-container"> 19 <video id="video" muted="muted" source="mp4" preload="auto" loop="loop"muted playsinline> 20 <source src="./video/r2_sample.mp4" type="video/mp4"> 21 </video> 22 </div> 23 </div> 24 </header>

CSS

1.container { 2 height: 100vh; 3 width: 100%; 4 position: relative; 5 overflow: hidden; 6} 7 8.video-container { 9 position: absolute; 10 width: 1480px; 11 height: 810px; 12} 13 14.svg-container { 15 font-family: "Hiragino Kaku Gothic ProN","Helvetica Neue", "Helvetica", "Hiragino Sans","Arial", "Yu Gothic", "Meiryo", sans-serif; 16 font-size: 6.1em; 17 letter-spacing: -4px; 18 z-index:1; 19 width: 100%; 20 height: 100%; 21 position: relative; 22 font-weight: bold; 23 top: 0; 24 transition-property:z-index; 25 -webkit-transition-property:z-index; 26 -moz-transition-property:z-index; 27 -o-transition-property:z-index; 28 -ms-transition-property:z-index; 29 opacity:1; 30} 31.cover{ 32 overflow: hidden; 33} 34#svgVideo { 35 width: 100%; 36 height: 100%; 37 overflow: visible; 38 display: block; 39} 40#svgVideo text { 41 text-anchor: middle; 42} 43#svgVideo mask rect { 44 fill: rgba(255, 255, 255, 0.8); 45 fill: white; 46 -webkit-fill:white; 47} 48.upper_rect { 49 fill: white; 50 background-clip: text; 51 -webkit-fill:white; 52 -webkit-mask: url(#mask); 53 -moz-mask: url(#mask); 54 -o-mask: url(#mask); 55 -ms-mask: url(#mask); 56 mask: url(#mask); 57 -webkit-mask-image: url(#mask); 58 -moz-mask-image: url(#mask); 59 -o-mask-image: url(#mask); 60 -ms-mask-image: url(#mask); 61 mask-image: url(#mask); 62} 63 64.video-container { 65 position: absolute; 66 top: 0%; 67 left: 0%; 68 z-index: -1; 69 min-height: 100%; 70 min-width: 100%; 71 width: 100vh; 72 height: 230px; 73 /* width: 100%; 74 height: 100vh; */ 75 -webkit-transform: matrix(1.2, 0, 0, 1.2, 0, 0); 76 -moz-transform: matrix(1.2, 0, 0, 1.2, 0, 0); 77 -o-transform: matrix(1.2, 0, 0, 1.2, 0, 0); 78 -ms-transform: matrix(1.2, 0, 0, 1.2, 0, 0); 79 transform: matrix(1.2, 0, 0, 1.2, 0, 0); 80 81} 82 83video{ 84 height: 100vh; 85 min-height: 100vh; 86 min-width: 100vw; 87 width: 130vw; 88 /* position: fixed; */ 89 top: 0; 90 left: 0; 91 overflow: hidden; 92 -webkit-transform: matrix(2, 0, 0, 2, 0, 0); 93 -moz-transform: matrix(2, 0, 0, 2, 0, 0); 94 -o-transform: matrix(2, 0, 0, 2, 0, 0); 95 -ms-transform: matrix(2, 0, 0, 2, 0, 0); 96 transform: matrix(2, 0, 0, 2, 0, 0); 97 98} 99.pc-only{ 100 display: none; 101} 102.sp-only{ 103 display: inline-block; 104} 105.middle-only{ 106 display: none; 107} 108@media(min-width:550px){ 109 .svg-container{ 110 font-size: 8.5em; 111 } 112 .video-container{ 113 width: 1024px; 114 height: 590px; 115 } 116 video{ 117 height: 100vh; 118 width: 110vw; 119 min-height: 100vh; 120 -webkit-transform: matrix(1.3, 0, 0, 1.3, 0, 0)!important; 121 -moz-transform: matrix(1.3, 0, 0, 1.3, 0, 0)!important; 122 -o-transform: matrix(1.3, 0, 0, 1.3, 0, 0)!important; 123 -ms-transform: matrix(1.3, 0, 0, 1.3, 0, 0)!important; 124 transform: matrix(1.3, 0, 0, 1.3, 0, 0)!important; 125 /* transform: translate(0%,15%); */ 126 } 127 .pc-only{ 128 display: none; 129 } 130 .sp-only{ 131 display: none; 132 } 133 .middle-only{ 134 display: inline-block; 135 } 136} 137@media(min-width:1025px){ 138 .svg-container{ 139 font-size: 9.2em!important; 140 } 141 .video-container{ 142 width: 1440px!important; 143 height: 810px!important; 144 -webkit-transform: matrix(1, 0, 0, 1, 0, 0)!important; 145 -moz-transform: matrix(1, 0, 0, 1, 0, 0)!important; 146 -o-transform: matrix(1, 0, 0, 1, 0, 0)!important; 147 -ms-transform: matrix(1, 0, 0, 1, 0, 0)!important; 148 transform: matrix(1, 0, 0, 1, 0, 0)!important; 149 150 } 151 video{ 152 height: 100vh!important; 153 width: 100vw!important; 154 min-height: 100%!important; 155 min-width: 100vw!important; 156 transform: matrix(1.4, 0, 0, 1.4, 0, 0)!important; 157 -webkit-transform: matrix(1.4, 0, 0, 1.4, 0, 0)!important; 158 -moz-transform: matrix(1.4, 0, 0, 1.4, 0, 0)!important; 159 -o-transform: matrix(1.4, 0, 0, 1.4, 0, 0)!important; 160 -ms-transform: matrix(1.4, 0, 0, 1.4, 0, 0)!important; 161 162 /* transform: translate(0%,15%); */ 163 } 164 .pc-only{ 165 display: block!important; 166 } 167 .middle-only{ 168 display: none!important; 169 } 170} 171

JS

1// Greensock 2var tl = new TimelineMax(); 3 4tl.add( 5 TweenMax.to('.video-container', 1, { scale: 1.5,opacity:1, transformOrigin: "50%, 50%", ease: Power2.easeInOut }), 6 7) 8 9 10tl.add( 11 TweenMax.to(".svg-container", 1, {scale: 40,zIndex:-1, ease:Power2.easeIn}), 12 "-=1" 13) 14 15// ScrollMagic 16var controller = new ScrollMagic.Controller(); 17 18// container pin 19var startpin = new ScrollMagic.Scene({ 20 duration: 800 21}) 22.setPin("#top") 23.addTo(controller); 24 25// tween 26new ScrollMagic.Scene({ 27 duration: 550 28}) 29.setTween(tl) 30 .addTo(controller); 31 32 33window.addEventListener('load', function(){ 34 35 //1000ミリ秒(1秒)毎に関数「showNowDate()」を呼び出す 36 setInterval("clientWidth()", 1000); 37 }); 38 function clientWidth(){ 39 let client_w = window.pageYOffset; 40 if(client_w > 400){ 41 $('video').get(0).play(); 42 } 43 else { 44 $('video').get(0).pause(); 45 } 46} 47

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

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

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

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

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

miyabi_takatsuk

2020/08/21 01:48

ソースコード、 (HTML、CSS、JavaScript) 記載しましょう。 質問文は修正できます。 コードはコードブロックを使ってください。 ```ここに言語を入力 コード ``` という形式です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問