From 74d1b378edb7b99583beb7512f81870773732830 Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Thu, 25 Jul 2024 15:07:10 -0700 Subject: [PATCH 1/9] Add spec for appearance:base This was discussed here: https://github.com/w3c/csswg-drafts/issues/5998 --- css-ui-4/Overview.bs | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index a93187d6e04..f4106d83775 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2111,7 +2111,7 @@ Switching appearance: the 'appearance' property
 	Name: appearance
-	Value: ''appearance/none'' | ''auto'' | <> | <>
+	Value: ''appearance/none'' | ''auto'' | ''base'' | <> | <>
 	Initial: none
 	Applies To: all elements
 	Inherited: no
@@ -2133,7 +2133,10 @@ Switching appearance: the 'appearance' property
 	In particular, using ''appearance: none'' allows authors
 	to suppress the native appearance of widgets,
 	giving them a primitive appearance
-	where CSS can be used to restyle them.
+  where CSS can be used to restyle them. Using ''appearance: base'' also
+  suppresses the native appearance of widgets and additionally
+  enables additional styling capabilities and interoperability, giving them a
+  base appearance.
 
 	
Note on the history of this feature @@ -2199,6 +2202,18 @@ Switching appearance: the 'appearance' property Elements other than widgets must be rendered as for ''appearance/none''. +
base +
+ Just like ''appearance/none'', the element is rendered following the + usual rules of CSS. Replaced elements other than widgets are not + affected by this and remain replaced elements. Widgets must not + have their native appearance, and instead must have their base + appearance. + + Widgets which don't have a base appearance must be rendered + as for ''appearance/auto''. The host language is responsible for defining + which widgets have a base appearance. +
<compat-auto>
These values exist for compatibility of content developed From 199e2eee2c0571c2d4c2b9710f8c7c49057694bd Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Mon, 5 Aug 2024 09:42:29 -0700 Subject: [PATCH 2/9] revise text --- css-ui-4/Overview.bs | 41 ++++++++++++++++++++++++++--------------- 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index f4106d83775..bc07c02b0dc 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2133,10 +2133,15 @@ Switching appearance: the 'appearance' property In particular, using ''appearance: none'' allows authors to suppress the native appearance of widgets, giving them a primitive appearance - where CSS can be used to restyle them. Using ''appearance: base'' also - suppresses the native appearance of widgets and additionally - enables additional styling capabilities and interoperability, giving them a - base appearance. + where CSS can be used to restyle them. + + Using ''appearance: base'' gives widgets a base + appearance. Widgets in base appearance have their + native appearance suppressed where CSS can be used to restyle them, + just like primitive appearance, but also have additional styling + capabilities and default styles which are usable and interoperable. This is + unlike base appearance which can cause some widgets to + disappear completely.
Note on the history of this feature @@ -2202,17 +2207,23 @@ Switching appearance: the 'appearance' property Elements other than widgets must be rendered as for ''appearance/none''. -
base -
- Just like ''appearance/none'', the element is rendered following the - usual rules of CSS. Replaced elements other than widgets are not - affected by this and remain replaced elements. Widgets must not - have their native appearance, and instead must have their base - appearance. - - Widgets which don't have a base appearance must be rendered - as for ''appearance/auto''. The host language is responsible for defining - which widgets have a base appearance. +
base +
+ The effect of ''appearance/base'' depends on the element it is applied to: +
+ : Replaced elements other than widgets + :: Non-widget replaced elements are not affected by this and + remain replaced elements. + + : Widgets which support base appearance + :: Just like ''appearance/none'', the element is rendered following the + usual rules of CSS. Widgets must not have their native + appearance, and instead must have their base appearance. + + : Widgets which don't support base appearance + :: Widgets which don't have a base appearance must be + rendered as for ''appearance/auto''. The host language is responsible + for defining which widgets have a base appearance.
<compat-auto>
From 3abcc08268f3e410523f1c4eee6a645a275831ac Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Tue, 6 Aug 2024 10:05:34 -0700 Subject: [PATCH 3/9] remove additional styling capabilities --- css-ui-4/Overview.bs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index bc07c02b0dc..5204fe04af2 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2138,10 +2138,9 @@ Switching appearance: the 'appearance' property Using ''appearance: base'' gives widgets a base appearance. Widgets in base appearance have their native appearance suppressed where CSS can be used to restyle them, - just like primitive appearance, but also have additional styling - capabilities and default styles which are usable and interoperable. This is - unlike base appearance which can cause some widgets to - disappear completely. + just like primitive appearance, but also have default styles which are + usable and interoperable. This is unlike base appearance which can + cause some widgets to disappear completely.
Note on the history of this feature From 99fce6c6c00d1f432a56f89d2dd96220893b93f6 Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Wed, 21 Aug 2024 13:02:20 -0700 Subject: [PATCH 4/9] add missing dl end tag --- css-ui-4/Overview.bs | 1 + 1 file changed, 1 insertion(+) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index 5204fe04af2..abe3805e581 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2223,6 +2223,7 @@ Switching appearance: the 'appearance' property :: Widgets which don't have a base appearance must be rendered as for ''appearance/auto''. The host language is responsible for defining which widgets have a base appearance. +
<compat-auto>
From 8871a762dcbdbafff7bae6337296e9ab7dbfb090 Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Wed, 21 Aug 2024 13:11:59 -0700 Subject: [PATCH 5/9] nits --- css-ui-4/Overview.bs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index abe3805e581..2e572e36fed 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2139,8 +2139,8 @@ Switching appearance: the 'appearance' property appearance. Widgets in base appearance have their native appearance suppressed where CSS can be used to restyle them, just like primitive appearance, but also have default styles which are - usable and interoperable. This is unlike base appearance which can - cause some widgets to disappear completely. + usable and interoperable. This is unlike primitive appearance which + can cause some widgets to disappear completely.
Note on the history of this feature @@ -2210,7 +2210,7 @@ Switching appearance: the 'appearance' property
The effect of ''appearance/base'' depends on the element it is applied to:
- : Replaced elements other than widgets + : elements other than widgets :: Non-widget replaced elements are not affected by this and remain replaced elements. From bed0caf4cba0c9a070172c0e2b6df9e367b020bc Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Thu, 22 Aug 2024 14:57:49 -0700 Subject: [PATCH 6/9] add issue text --- css-ui-4/Overview.bs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index 2e572e36fed..068ec2b6adf 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2142,6 +2142,10 @@ Switching appearance: the 'appearance' property usable and interoperable. This is unlike primitive appearance which can cause some widgets to disappear completely. + ISSUE: Do not to ship ''appearance: base'' until its stylesheet has been + properly and thoroughly defined (and implemented per spec) for all form + controls. +
Note on the history of this feature From aa53cbf20a7dd9b570cd9e94e1e29594625bd6ec Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Tue, 10 Sep 2024 09:53:10 -0700 Subject: [PATCH 7/9] add style adjusting based on appearance --- css-ui-4/Overview.bs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index 068ec2b6adf..d0f26450fe6 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2142,6 +2142,11 @@ Switching appearance: the 'appearance' property usable and interoperable. This is unlike primitive appearance which can cause some widgets to disappear completely. + A widget can have some style sheet associated with it and those styles can + change based on whether the widget has a base appearance. + Native appearance and primitive appearance should + have the same styles. + ISSUE: Do not to ship ''appearance: base'' until its stylesheet has been properly and thoroughly defined (and implemented per spec) for all form controls. From c1dd0fbf100291c7a7cb682c63ef18666e99b5a0 Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Tue, 17 Sep 2024 11:50:57 -0700 Subject: [PATCH 8/9] revise issue text --- css-ui-4/Overview.bs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index d0f26450fe6..8dcb9d46fce 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2147,9 +2147,9 @@ Switching appearance: the 'appearance' property Native appearance and primitive appearance should have the same styles. - ISSUE: Do not to ship ''appearance: base'' until its stylesheet has been - properly and thoroughly defined (and implemented per spec) for all form - controls. + ISSUE: ''appearance:base'' is not ready to ship until its stylesheet has been + fully defined in the HTML specification, and implemented accordingly, for all + HTML form controls.
Note on the history of this feature From 966654235f8df13f5ad4b814b49f7a7dc4d80f22 Mon Sep 17 00:00:00 2001 From: Joey Arhar Date: Tue, 17 Sep 2024 13:04:11 -0700 Subject: [PATCH 9/9] update text for elements other than widgets --- css-ui-4/Overview.bs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/css-ui-4/Overview.bs b/css-ui-4/Overview.bs index 8dcb9d46fce..278faf6534a 100644 --- a/css-ui-4/Overview.bs +++ b/css-ui-4/Overview.bs @@ -2220,8 +2220,8 @@ Switching appearance: the 'appearance' property The effect of ''appearance/base'' depends on the element it is applied to:
: elements other than widgets - :: Non-widget replaced elements are not affected by this and - remain replaced elements. + :: Elements other than widgets must be rendered as for + ''appearance/none''. : Widgets which support base appearance :: Just like ''appearance/none'', the element is rendered following the