Skip to main contentModule url_resolve
Source - resolve_url
base_url(絶対URL、例: https://cdnjs.cloudflare.com/.../css/all.min.css)を
基点として、CSS内の相対URL参照(../webfonts/x.woff2 等)を絶対URLへ解決する。
外部CSSファイル自身の場所を基準にする必要がある(HTMLドキュメント自身の
ホストとは異なることが多い。例: cdnjs.cloudflare.com上のCSSが参照する
webfontはcdnjs.cloudflare.com上の相対パス)。- rewrite_css_urls
- 外部CSSテキスト中の
url(...) 参照を、そのCSSファイル自身の絶対URL
(css_base_url)を基準に絶対URLへ書き換える。@font-face { src: url(...) }
や background-image: url(...) 等、CSS内の相対パスは常にCSSファイル自身の
場所基準で解決されるべき(HTMLドキュメントのURLではない)という仕様に従う。 - split_target
- 取得先の
(https か, ホスト, パス) を求める。 - truncate_to_balanced_css
- ネットワーク切断(TLS読み取りエラー等)で外部CSSが波括弧の途中で
打ち切られた場合、そのまま後続のCSS(他の
<link>分)と連結すると、
閉じられなかった{のせいでパーサーが「まだ前のルールの中にいる」と
誤認し、以降の本物のルールを大量に読み飛ばしてしまう(2026-07-25発見)。
文字列/コメントを簡易的に読み飛ばしつつ波括弧の深さを追跡し、深さが
0に戻った最後の位置(=最後まで完結した最後のトップレベルルールの
直後)までに安全側で切り詰める。既に完全にバランスしている場合は
元の文字列をそのまま返す。