@Masaharu-Fuji

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

chromeパフォーマンスのcss分析にある「遅いパスの不一致の割合」とは何ですか

解決したいこと

純粋な疑問なのですが、cssの用語について知りたいことがあります。

chromeのdeveloper toolのperformanceタブよりcssの分析ができます。
分析をするとcssセレクタごとの経過時間や一致数が表に出されます。

この時の、「遅いパスの不一致の割合」とは何でしょうか?

以下のリンクでは、このような説明があるのですが、
何を指しているのかわかりませんでした。

% of slow-path non-matches

The ratio of elements that didn't match with this CSS selector, to the elements that the browser engine attempted to match, and which required the browser engine to use less optimized code to match.

どなたか意訳、もしくはどのような計算結果のものなのか教えていただきたいです。

0 likes

1Answer

日本語版だと

ブラウザ エンジンがマッチングを試みた要素のうち、マッチングに最適化されていないコードをブラウザ エンジンが使用しなければならなかった要素のうち、この CSS セレクタに一致しなかった要素の割合。

こうありますが、それでもわからなかったということでしょうか……?

また、 Microsfot の 同じ機能についての記事では次の様な説明となります。

この CSS セレクターと一致しなかった要素と、ブラウザー エンジンが一致しようとした要素との比率。ブラウザー エンジンでは、一致するように最適化されていないコードを使用する必要があります。

0Like

Comments

  1. @Masaharu-Fuji

    Questioner

    自分も日本語訳されたサイトを読んだのですが、説明がよく分からなかったです。 

    「マッチングに最適化されていないコードをブラウザ エンジンが使用しなければならなかった要素のうち」

    これを「なにかしら最適化をこけたけど、マッチング処理判定に使われた要素」という意味で受け取ったんですけど、自分で書いてても、結局どんな状態なんだという感じです。

    このマッチング処理がどんな働きをしているのかイメージついていないかもしれないです。

  2. @Masaharu-Fuji

    Questioner

    あと、この割合として出力される数値は、分析において、どのように扱われるものなのかと、疑問に感じました

  3. CSS セレクタの最適化についてはここらへんが参考になりますでしょうか……?(複雑なセレクタを使用すると効率が悪いみたいなのはそうなので

  4. @Masaharu-Fuji

    Questioner

    CSSの最適化については、上記のサイトでセレクタの違いで描画に差が出ることはわかったのですが、chromeパフォーマンスのcss分析にある「遅いパスの不一致の割合」が指している部分について、イメージを掴むことができなかったです...

  5. CSS セレクタの 探索は セレクタの右から順にみる為、 右端から一致したものを左にフィルタリングする際に 不一致が多いと遅いとかなんでしょうか……?

    例えば td:nth-child(1) は 全ての兄弟要素群 から 1番目の を絞った上で td で更に絞るという挙動となるので(これ自体は最適化が走っている気はするので遅くはないが

Your answer might help someone💌