pub(crate) fn get_replaced_element_size_in(
node: &StyledNode<'_>,
pct_base_w: Option<i32>,
) -> Option<(i32, i32)>Expand description
置換要素(img/video/input 等)の寸法。
pct_base_w は width/max-width の % の基準(包含ブロックの content 幅)。
None は「基準が無い」(内在幅の計測中など)で、% 幅は auto 扱いになる。
【2026-09-26 バグ修正】従来は % を常にビューポート基準で解決しており、
img{width:100%} が親の幅ではなく画面幅いっぱい(1280px)になっていた
(www.sugi-lab.net のギャラリー・研究紹介の画像)。併せて:
- 幅か高さの片方だけ指定されたら、自然サイズの縦横比でもう片方を決める (従来は指定側だけ変わり画像が歪んだ)。
max-width/max-heightを比率を保って適用する(img{max-width:100%}は レスポンシブ画像の定番)。heightの%は包含ブロックの高さが確定していれば(PCT_BASE_H)それ基準、 未確定なら仕様どおり auto(従来はビューポート高さ基準で 800px 等になっていた)。