@@ -44,6 +44,11 @@ spec:css-pseudo-4; type:selector; text:::first-line
4444spec:dom; type:dfn; for:/; text:element
4545spec:infra; type:dfn; text:list
4646spec:html; type:dfn; for:global object; text:realm
47+ spec:css22; type:property;
48+ text:max-height
49+ text:max-width
50+ text:min-height
51+ text:min-width
4752</pre>
4853
4954<pre class="anchors">
@@ -1026,10 +1031,9 @@ name to child input properties map</dfn>. Initially these maps are empty and are
10261031Each <a>box</a> has an associated <dfn>layout valid flag</dfn> . It may be either
10271032<dfn>layout-valid</dfn> or <dfn>layout-invalid</dfn> . It is initially set to <a>layout-invalid</a> .
10281033
1029- TODO comments. <dfn>intrinsic sizes valid flag</dfn> . <dfn>intrinsic-sizes-valid</dfn> .
1030- <dfn>intrinsic-sizes-invalid</dfn> .
1031-
1032- Issue: The above flag is too restrictive on user agents, change.
1034+ Each <a>box</a> has an associated <dfn>intrinsic sizes valid flag</dfn> . If may be either
1035+ <dfn>intrinsic-sizes-valid</dfn> or <dfn>intrinsic-sizes-invalid</dfn> . It is initially set to
1036+ <a>intrinsic-sizes-invalid</a> .
10331037
10341038When the computed style for a |box| changes, the user agent must run the following steps:
10351039 1. Let |layoutFunction| be the ''layout()'' function of the 'display' property on the computed
@@ -1045,19 +1049,29 @@ When the computed style for a |box| changes, the user agent must run the followi
10451049 input properties map</a> .
10461050
10471051 5. For each |property| in |inputProperties|, if the |property|'s <a>computed value</a> has
1048- changed, set the <a>layout valid flag</a> on the <a>box</a> to <a>layout-invalid</a> .
1052+ changed, set the <a>layout valid flag</a> on the <a>box</a> to <a>layout-invalid</a> , and
1053+ set the <a>intrinsic sizes valid flag</a> to <a>intrinsic-sizes-invalid</a> .
10491054
10501055 6. For each |property| in |childInputProperties|, if the |property|'s <a>computed value</a> has
1051- changed, set the <a>layout valid flag</a> on the <a>box</a> to <a>layout-invalid</a> .
1056+ changed, set the <a>layout valid flag</a> on the <a>box</a> to <a>layout-invalid</a> , and
1057+ set the <a>intrinsic sizes valid flag</a> to <a>intrinsic-sizes-invalid</a> .
10521058
10531059When a child <a>box</a> represented by a {{LayoutChild}} is added or removed from the <a>box
10541060tree</a> or has its layout invalidated (from a computed style change, or a descentdant change). Set
1055- the <a>layout valid flag</a> on the current <a>box</a> to <a>layout-invalid</a> .
1061+ the <a>layout valid flag</a> on the current <a>box</a> to <a>layout-invalid</a> and set the
1062+ <a>intrinsic sizes valid flag</a> on the current <a>box</a> to <a>intrinsic-sizes-invalid</a> .
10561063
10571064Note: This only describes layout invalidation as it relates to the CSS Layout API. All
10581065 <a>boxes</a> conceptually have a <a>layout valid flag</a> and these changes are propagated
10591066 through the <a>box tree</a> .
10601067
1068+ Issue: We also want to implcitly invalidate on size and edge properties, i.e.
1069+ - 'width' , 'min-width' , 'max-width'
1070+ - 'height' , 'min-height' , 'max-height'
1071+ - 'padding-top' , 'padding-bottom' , 'padding-left' , 'padding-right'
1072+ - 'border-top-width' , 'border-bottom-width' , 'border-left-width' , 'border-right-width'
1073+ - 'overflow' , 'overflow-x' , 'overflow-y'
1074+
10611075Concepts {#concepts}
10621076--------------------
10631077
0 commit comments