2017-09-07 22 views
0

どのように私のプログレッシブWebアプリケーションに、以下のようなアニメーション起動画面を設定できますか?出来ますか?アニメーション起動画面付きプログレッシブWebアプリケーション

Animated Launch Screen

+0

私の知る限り、これはまだサポートされていません。あなたが実装できる最も近いのは、スプラッシュ画面を使用することです。 [Chrome M47](https://developers.google.com/web/updates/2015/10/splashscreen)以降、「スプラッシュ画面はWeb Appマニフェストに保持されている情報から動的に生成され、名前の組み合わせですデバイスの "128dp"に最も近いアイコン配列のアイコンが表示されます。 –

+0

この[関連する投稿](https://stackoverflow.com/a/34376716/5995040、[スプラッシュ画面](https://developers.google.com/web/tools/lighthouse/audits/custom-スプラッシュスクリーンは設定可能です。 –

答えて

1

現在PWAのスプラッシュ画面は、色、ロゴ、およびタイトルで構成することができます。より強力なAPIを提供することについては、standards discussions happeningがありますが、この回答では何も固まっていません。

標準の静的スプラッシュ画面を使用して、アプリのコンテンツにアニメーションを付けることもできます。次に、PWAのbackground_colorに一致するオーバーレイを作成し、バックグラウンドをツールバーにアニメーション化するサンプルコードを示します。明らかに、色を微調整したいと思うでしょう。スライドアップアニメーションの代わりにフェードインに切り替えることもできます。

<style> 
    #splash { 
    background-color: #2196F3; 
    position: fixed; 
    top: 0; 
    height: 100vh; 
    width: 100vw; 
    z-index: 10; 
    transition-property: top; 
    transition-duration: 300ms; 
    transition-delay: 300ms; 
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1); 
    } 

    #splash.animate { 
    top: -100vh; 
    } 
</style> 

<script> 
    document.addEventListener('DOMContentLoaded',() => { 
    document.querySelector('#splash').addEventListener('transitionend', (event) => { 
     event.target.remove(); 
    }); 
    requestAnimationFrame(() => { 
     document.querySelector('#splash').classList.add('animate'); 
    }); 
    }); 
</script> 

<div id="splash"></div> 

SampleからDemo - Source

関連する問題