プログレッシブWebアプリ(PWAS):CSSと開発に深く潜ります
オンラインの風景は、モバイルデバイスの台頭とともに劇的に変化しました。ウェブサイトは、単一のバージョンからデスクトップ/モバイルのバリエーション、レスポンシブデザイン、そして最後にネイティブモバイルアプリに進化しました。 最新のイテレーションは、Progressive Webアプリ(PWA)です。これは、最高のWebとネイティブのアプリエクスペリエンスをブレンドすることを目指しています。この記事では、PWA開発に不可欠なCSS技術について説明します
重要な概念:
- PWAは、ネイティブアプリの信頼性、速度、および魅力的なエクスペリエンスをWebのアクセシビリティと組み合わせて、アプリストアのダウンロードの必要性を排除します。
- PWA開発には標準のWebアプリ開発に似ていますが、 ファイル(PWA外観の制御)、サービスワーカー(オフライン機能を有効)、およびCSS。
- 重要なCSSの考慮事項には、プラットフォーム固有のUIアドヒアランス、デバイス機能設計、優雅な劣化/プログレッシブ強化の実装が含まれます。 無駄のないミニマリストのデザインは、最適なパフォーマンスのための鍵です
Create React App、Angular、Ionicなどのフレームワークは、PWAの開発を簡素化しますが、パフォーマンスに影響を与える可能性があります。それらの使用を注意深く考えてください。
manifest.json
Google Lighthouseなどのパフォーマンス監視ツールは、PWAの速度と応答性を最適化するために非常に貴重です。 - PWASを理解する:
- 3つのCore PWA機能アドレス典型的なWebアプリの欠点:
信頼性:PWAは信頼できるロードで、標準のWebページとは異なり、ネットワーク接続が不十分であってもネイティブアプリを模倣しています。
速度:
PWAのパフォーマンスは、場所、ネットワーク速度、またはその他の外部要因に関係なく、一貫性を維持しています。- 魅力的:pwasは、ネイティブアプリに似た没入型のフルスクリーンエクスペリエンスを提供し、アプリストアのインストールなしで、しばしばプッシュ通知をサポートします。
- GoogleはPWAの採用を支持しており、その人気は急速に増加しています。 DudaのCEOであるItai SadanがCloudFest 2018で述べています。
- PWA開発エッセンシャル: PWA開発は、標準のWebアプリ開発に似ており、展開にHTTPSが必要です(LocalHostテストは受け入れられます)。 主要な要件には、次のものが含まれます
-
マニフェストファイル(
manifest.json
):このJSONファイルは、デバイスのホーム画面でのPWAの外観を制御し、名前、アイコン、色などを定義します。CSSはここに直接関与していません。純粋に構成です。 (以下に示す例) -
サービスワーカー:ブラウザとは独立して実行されているJavaScriptファイル、ネットワークリクエストの傍受、キャッシュリソース、プッシュ通知の処理。これがオフライン機能の基盤です。 (以下のスニペットの例)
self.addEventListener('install', function(e) { e.waitUntil( caches.open('airhorner').then(function(cache) { return cache.addAll([ '/', '/index.html', '/index.html?homescreen=1', '/?homescreen=1', '/styles/main.css', '/scripts/main.min.js', '/sounds/airhorn.mp3' ]); }) ); });
-
サイトアセット(CSSを含む):サービスワーカーのインストール中、CSS、JavaScript、メディアファイルを含むすべてのサイト資産がインストールされます。 これは、CSSスタイリングが有効になる場所です
PWASのCSSの考慮事項:
いくつかの重要な決定は、CSSの実装に影響を与えます:
-
プラットフォーム固有のUIS:プラットフォーム固有のUISを回避すると、ユーザーの疎外が妨げられ、潜在的に変化するプラットフォーム設計への依存度が低下します。ネイティブのような行動を目指して努力しながら、プラットフォームに依存しないアプローチが一般的に推奨されます。
- デバイス機能:デスクトップを含むすべてのプラットフォームのデザイン(ChromeはすでにデスクトップPWASをサポートしています)。 CSSとサービスワーカーを使用して、利用可能なリソースに基づいて機能を適応させます。
-
if (!('serviceWorker' in navigator)) { console.log('Service Worker not supported'); return; }
一般的な提案: ユーザーエクスペリエンスと開発リソースのバランス。 プラットフォームに依存しないデザインに設計標準(材料デザインなど)とフレームワーク(ブートストラップなど)を利用します。 プラットフォームに基づいた条件付きCSSロード( - または
を使用しますが、後者の信頼性が低くなります)は、複雑さを追加します。
navigator.platform
navigator.userAgent
pwaフレームワーク:
CREATE REACT APP:
PWA開発のためのReactコンポーネントを提供します。
-
Angular:
Googleのフレームワークは、ネイティブのPWAサポート( )を提供します
-
イオン:クロスプラットフォームPWA開発のための角度、コルドバ、および組み込みのサービスワーカー/マニフェストサポート。
PWAパフォーマンスの最適化:
速度とエンゲージメントの維持が重要です。 CSSを無駄のないミニマリストに保ちます。 考えてみてください:
- http/2サーバーの使用
- 重要なCSSの場合
-
rel=preload
NetworkInformationApiおよびキャッシュ
重要なCSSをインランス - リソースの最小化と最適化
結論:
CSSを使用してPWAを開発するには、パフォーマンスと応答性を慎重に検討する必要があります。 多くのWeb開発手法が適用されますが、フレームワークの使用とCSSの最適化に関する情報に基づいた決定は、高性能で魅力的なユーザーエクスペリエンスを作成するために不可欠です。 無駄のない効率的なデザインに優先順位を付けることを忘れないでください
以上がCSSとPWAS:プログレッシブWebアプリを構築するためのいくつかのヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

CSSグリッドは、複雑で応答性の高いWebレイアウトを作成するための強力なツールです。設計を簡素化し、アクセシビリティを向上させ、古い方法よりも多くの制御を提供します。

記事では、レスポンシブデザインにおけるスペースの効率的なアラインメントと分布のためのレイアウト方法であるCSS FlexBoxについて説明します。 FlexBoxの使用量を説明し、CSSグリッドと比較し、ブラウザのサポートを詳細に説明します。

この記事では、ビューポートメタタグ、柔軟なグリッド、流体メディア、メディアクエリ、相対ユニットなど、CSSを使用してレスポンシブWebサイトを作成するための手法について説明します。また、CSSグリッドとフレックスボックスを使用してカバーし、CSSフレームワークを推奨しています

この記事では、要素の寸法の計算方法を制御するCSSボックスサイズのプロパティについて説明します。コンテンツボックス、ボーダーボックス、パディングボックスなどの値と、レイアウト設計とフォームアライメントへの影響について説明します。

記事では、CSS、キープロパティ、およびJavaScriptとの組み合わせを使用してアニメーションの作成について説明します。主な問題は、ブラウザの互換性です。

記事では、3D変換、主要なプロパティ、ブラウザの互換性、およびWebプロジェクトのパフォーマンスに関する考慮事項にCSSを使用して説明します。

この記事では、CSSグラデーション(線形、放射状、繰り返し)を使用して、ウェブサイトのビジュアルを強化し、深さ、フォーカス、および現代の美学を追加します。

記事では、CSSの擬似要素、HTMLスタイリングの強化における使用、および擬似クラスとの違いについて説明します。実用的な例を提供します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

WebStorm Mac版
便利なJavaScript開発ツール

Dreamweaver Mac版
ビジュアル Web 開発ツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ホットトピック









