国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
再配置とは何ですか? {.title}
注:ページロード{.title}
タイムラインツール{.title}

UI応答性のためのCSSのデバッグ

Feb 18, 2025 pm 01:13 PM

この記事は、ティファニー?ブラウンが書いた本「The Master of CSS」から抜粋しています。この本は世界中の主要な書店で入手できます。また、ここで電子書籍バージョンを購(gòu)入することもできます。

css特定のプロパティと値はリフローをトリガーします。これは高価で、ユーザーインターフェイスの応答速度を低下させる可能性があります - ページレンダリング、アニメーションの流ency性、スクロールパフォーマンスは、特に攜帯電話やタブレットで影響を受けます。テレビ。

再配置とは何ですか? {.title}

再配置とは、ページの一部またはすべてのレイアウトを変更する操作を指します。たとえば、要素のサイズを変更するか、左の位置を更新します。ブラウザは、ドキュメント內(nèi)の他の要素の高さ、幅、および位置を再計(jì)算します。

repaint(Repaint)は再塗裝に似ており、ブラウザにドキュメントの一部を再レンダリングするように強(qiáng)制します。たとえば、ボタンの上にホバリングするときにマウスの色を変更することは、再描畫操作です。 RedRawは、ノードのサイズまたは位置に影響を與えないため、再配置に影響を與えません。

再配置と再描畫は、通常、要素の追加や削除など、DOM操作によってトリガーされます。しかし、それらは、要素のサイズ、可視性、または位置に影響を與える屬性の変化によって引き起こされる可能性があります。これは、変更がJavaScriptまたはCSSベースのアニメーションによって引き起こされているかどうかに當(dāng)てはまります。

注:ページロード{.title}

ページが読み込まれると、ブラウザは最初のHTML、CSS、およびJavaScriptを解析します。

プロジェクトの再描畫と再配置を完全に避けることは困難です。ただし、タイムラインツールを使用してそれらを識(shí)別し、その影響を減らすことができます。

タイムラインツール{.title}

タイムラインツールは、最初は少し混亂する可能性があります。フロントエンドのパフォーマンスを測(cè)定し、さまざまなタスクが完了するまでの時(shí)間を記録します。ページと対話しながらアクティビティを記録することにより、どのCSSコードがパフォーマンスボトルネックを引き起こすかを確認(rèn)できます。

タイムラインを使用するには、[開発者ツール]インターフェイスの[タイムライン]タブをクリックします。 Chrome、Opera、およびFirefoxでは、適切に「タイムライン」と名付けられています。サファリはそれを複數(shù)形の「タイムライン」と名付けました。 Internet Explorer 11は、より記述的な名前「UI応答性」を使用します。 [9] 任意のブラウザでは、「レコード」ボタンを押して録音プロセスを開始します。問題があるページの部分と対話し、終了したら、対応するボタンをクリックして録音を停止します。

使用しているブラウザによっては、すぐにデータが表示されるか、録音を停止した後に表示される場(chǎng)合があります。 SafariとFirefoxはリアルタイムでデータを表示しますが、Chrome、Opera、およびInternet Explorerは、録音を停止した後にパフォーマンスチャートをレンダリングします。

ドキュメントの読み込み、関數(shù)呼び出し、DOMイベント、スタイルの再計(jì)算、および描畫操作はすべて各ブラウザに記録されているため、パフォーマンスボトルネックの概要を説明できます。 CSSのパフォーマンスについては、少なくとも2つの関連する側(cè)面に焦點(diǎn)を當(dāng)てる必要があります。

  • 多くのスタイルの再計(jì)算と描畫操作
  • 長(zhǎng)い時(shí)間のかかる操作、タイムラインのより大きなブロックは
  • を表しています

実際の狀況を理解するために、2つの基本的なドキュメント、例Aと例Bを比較します。どちらの場(chǎng)合も、x位置0からx位置1000に一連のdiv {.riteral}要素を移動(dòng)します。どちらの例もCSS変換を使用しています。ただし、例aでは、left屬性をアニメーション化します。例bでは、変換変換を使用し、transform屬性をアニメーション化します。

2つの例のマークは同じです(結(jié)果は図3.16に示されています):

<!DOCTYPE html>
<html lang="en-US">
  <head>
    <meta charset="utf-8">
    <title>Performance example</title>
    <link rel="stylesheet" type="text/css" href="style.css">
  </head>
  <body>
    <button type="button" id="move">Move</button>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <??>
  </body>
</html>

Debugging CSS for UI Responsiveness

図3.16 SafariブラウザーのHTMLデモページ。両方のドキュメントのJavaScriptコードも同じです。 [移動(dòng)]ボタンをクリックすると、各div要素のクラスが切り替わります。
movedCSSコードは2つの別の部分です。例Aで使用されているCSSは次のとおりです。

var move = document.getElementById('move');
move.addEventListener('click', function(e) {
    var objs = document.body.querySelectorAll('div');
    Array.prototype.forEach.call(objs, function(o){
        o.classList.toggle('moved');
    });
});
の後、このアニメーションは、タイムラインで多數(shù)のスタイル計(jì)算と再描畫インジケーターを生成します。次の畫像は、Safari(図3.17)、Chrome(図3.18)、Internet Explorer(図3.19)、およびFirefox(図3.20)でのこの変換のタイムライン出力を示しています。

div {
  background: #36f;
  margin-bottom: 1em;
  width: 30px;
  height: 30px;
  position: relative;
  left: 0;
  transition: left 2s ease-in;
}

.moved {
    left: 1000px;
}

図3.17サファリブラウザの左の位置変換

Internet Explorer 11ブラウザーの左の位置変換のタイムライン出力Debugging CSS for UI Responsiveness

図3.20 firefoxブラウザの出力Debugging CSS for UI Responsiveness スタイルの計(jì)算と再描畫は、次のものに関連しています。
。変更がアニメーションまたは変換によって引き起こされた場(chǎng)合でも、変更が変更されたときに屬性の屬性トリガーの並べ替えをトリガーします。
Debugging CSS for UI Responsiveness さて、例bのCSSを見てみましょう:
Debugging CSS for UI Responsiveness ここでは、変換を使用して
を変換します。 left leftほとんどのブラウザーでは、変換は再注文をトリガーしません。また、タイムラインには塗り直し操作が少なくなります。これは、Safari(図3.21)、Chrome(図3.22)、およびインターネットエクスプローラー(図3.23)で明らかです。 Firefoxは例外です。左の変換と変換変換のタイムラインは非常に似ています。

Debugging CSS for UI Responsiveness

図3.21 -webkit-transform
Debugging CSS for UI Responsiveness
の屬性の屬性の出力図3.22ブラウザtransform
Debugging CSS for UI Responsiveness 図3.23削除されるコードの{.title}
殘念ながら、どのプロパティが再配置と再描畫を引き起こすかについての明確なリストはありません。 Paul LewisのCSSトリガーは最も近いですが、クロム固有です。ただし、ブラウザはこれらのプロパティの多くで同様に動(dòng)作するため、このリソースは少なくともどのプロパティが問題を引き起こす可能性があるかについてのアイデアを提供します。 Debugging CSS for UI Responsiveness
どのプロパティが問題になるかがわかったら、次のステップは仮説をテストすることです。コメントを使用するか、一時(shí)的なtransformプレフィックスを追加してプロパティを無効にし、タイムラインテストを再実行します。

パフォーマンスは相対的であり、絶対的でも完全でもないことを忘れないでください。目標(biāo)は改善することです。以前よりもパフォーマンスを向上させることです。屬性または効果のパフォーマンスが受け入れるには遅すぎる場(chǎng)合、完全に削除されます。

以上がUI応答性のためのCSSのデバッグの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國(guó)語版

SublimeText3 中國(guó)語版

中國(guó)語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

「レンダリングブロッキングCSS」とは何ですか? 「レンダリングブロッキングCSS」とは何ですか? Jun 24, 2025 am 12:42 AM

ブラウザは、特にインポートされたスタイルシート、ヘッダーのインラインCSS、および最適化されていないメディアクエリスタイルを使用して、ブラウザがインラインおよび外部CSSをデフォルトで主要なリソースとして表示するため、ページレンダリングをブロックします。 1.重要なCSSを抽出し、HTMLに埋め込みます。 2。JavaScriptを介して非クリティカルなCSSの読み込みを遅らせる。 3.メディア屬性を使用して、印刷スタイルなどのロードを最適化します。 4.リクエストを減らすためにCSSを圧縮およびマージします。ツールを使用してキーCSSを抽出し、REL = "Preload"非同期負(fù)荷を組み合わせ、過度の分割と複雑なスクリプト制御を避けるためにメディア遅延荷重を合理的に使用することをお?jiǎng)幛幛筏蓼埂?/p>

外部対內(nèi)部CSS:最良のアプローチは何ですか? 外部対內(nèi)部CSS:最良のアプローチは何ですか? Jun 20, 2025 am 12:45 AM

TheBestAppRoachforCSDependsonTheProject'sSpecificNeeds.forLargerProjects、externalCssissisbetterduetoMaintainasiladability; forsmallerProjectsOrsingLe-PageApplications、internalcsSmightBemoresuitable.it

私のCSSは小文字でなければなりませんか? 私のCSSは小文字でなければなりませんか? Jun 19, 2025 am 12:29 AM

いいえ、CSSDOESNOTHAVETOBEINLOWERCASE。

CSSケース感度:重要なことを理解する CSSケース感度:重要なことを理解する Jun 20, 2025 am 12:09 AM

cssismostlycase-inssensitive、buturlsandfontfamilynamesarecase-sensitive.1)propertiesandvalueslikecolor:red; areotcase-sensitive.2)urlsmustmatchtheserver'scase、例えば、/畫像/logo.png.3)

Autoprefixerとは何ですか?それはどのように機(jī)能しますか? Autoprefixerとは何ですか?それはどのように機(jī)能しますか? Jul 02, 2025 am 01:15 AM

Autoprefixerは、ターゲットブラウザスコープに基づいてCSS屬性にベンダープレフィックスを自動(dòng)的に追加するツールです。 1.エラーで接頭辭を手動(dòng)で維持する問題を解決します。 2. PostCSSプラグインフォーム、CSSを解析し、プレフィックスする必要がある屬性を分析し、構(gòu)成に従ってコードを生成する屬性を分析します。 3.使用手順には、プラグインのインストール、ブラウザーリストの設(shè)定、ビルドプロセスでそれらを有効にすることが含まれます。 4。メモには、接頭辭を手動(dòng)で追加しない、構(gòu)成の更新を保持すること、すべての屬性ではなくプレフィックスを維持することが含まれ、プリ??プロセッサでそれらを使用することをお?jiǎng)幛幛筏蓼埂?/p>

CSSカウンターとは何ですか? CSSカウンターとは何ですか? Jun 19, 2025 am 12:34 AM

csScountersCantAnationally-bersectionSandLists.1)usecounter-resettoinitialize、counter-incrementtoincrease、andcounter()orcounters()todisplayvalues.2)を組み合わせたjavascriptfordynamiccontenttoensureaCurateupdatesと組み合わせます。

CSS:ケースはいつ重要ですか(いつそうではありませんか)? CSS:ケースはいつ重要ですか(いつそうではありませんか)? Jun 19, 2025 am 12:27 AM

CSSでは、セレクターと屬性名はケースに敏感ですが、値、名前の色、URL、およびカスタム屬性はケースに敏感です。 1.バックグラウンドカラーや背景色など、セレクターと屬性名はケース非感受性です。 2。値の16進(jìn)數(shù)色は大文字と小文字を區(qū)別しますが、赤と赤などの名前の色は無効です。 3. URLは癥例に敏感であり、ファイルロードの問題を引き起こす可能性があります。 4.カスタムプロパティ(変數(shù))はケースに敏感であり、使用する場(chǎng)合はケースの一貫性に注意を払う必要があります。

conic-gradient()関數(shù)とは何ですか? conic-gradient()関數(shù)とは何ですか? Jul 01, 2025 am 01:16 AM

TheConic-Gradient()functionsscreateScular勾配の勾配は、測(cè)定されていることを確認(rèn)してください

See all articles