@@ -1745,7 +1745,7 @@ without adverse consequences to compatibility,
1745
1745
so this specification allows flexibility.
1746
1746
1747
1747
1748
- <h2 id="control- styling" oldids="form-styling">Control Styling</h2>
1748
+ <h2 id="styling-widgets " oldids="form-styling control-styling"> Styling Widgets </h2>
1749
1749
1750
1750
<h3 id="appearance-switching" caniuse="css-appearance">Switching appearance</h3>
1751
1751
@@ -1760,13 +1760,18 @@ Animation type: discrete
1760
1760
</pre>
1761
1761
1762
1762
While the way most elements in a document look can be fully controlled by CSS,
1763
- controls are typically rendered by UAs using native UI controls of the host operating system,
1763
+ <a>widgets</a> are typically rendered by UAs using native UI controls of the host operating system,
1764
1764
which can neither be replicated nor styled using CSS.
1765
1765
1766
+ The term <dfn export>widget</dfn> in this specification denotes elements that can have <dfn export>native appearance</dfn> ,
1767
+ meaning that they are rendered like analogous native widgets or controls of the host operating system or platform,
1768
+ or with a look and feel not otherwise expressible in CSS.
1769
+ It is up to the host language (e.g., HTML [[HTML]] ) to define which elements can have <a>native appearance</a> .
1770
+
1766
1771
This specification introduces the 'appearance' property
1767
1772
to provide some control over this behavior.
1768
1773
In particular, using ''appearance: none'' allows authors
1769
- to suppress the native style of controls ,
1774
+ to suppress the <a> native appearance</a> of <a>widgets</a> ,
1770
1775
so that CSS can be used to restyle them.
1771
1776
1772
1777
<details class=note>
@@ -1782,16 +1787,16 @@ so that CSS can be used to restyle them.
1782
1787
in part because many values applied to pseudo-elements that other browsers don't have,
1783
1788
as they construct form elements differently,
1784
1789
and which should not be standardized,
1785
- since the ability to make for controls look substantially different on different platforms
1790
+ since the ability to make form controls look substantially different on different platforms
1786
1791
should be preserved.
1787
1792
1788
- Also, because the ability to turn any arbitrary element (including any form control)
1793
+ Also, the ability to turn any arbitrary element (including any form control)
1789
1794
into any (other) arbitrary form control
1790
1795
is considered a misfeature.
1791
1796
1792
1797
Instead, the design being specified
1793
1798
is based on just having an "auto" value that makes form controls look like whatever they need,
1794
- and a "none" value that suppresses " native" look .
1799
+ and a "none" value that suppresses [= native appearance=] .
1795
1800
1796
1801
However, there is evidence that this alone is not web compatible,
1797
1802
due in part to uses such as:
@@ -1816,17 +1821,16 @@ so that CSS can be used to restyle them.
1816
1821
<dt> <dfn>none</dfn>
1817
1822
<dd>
1818
1823
The element is rendered following the usual rules of CSS.
1819
- Replaced elements other than controls are not affected by this,
1824
+ Replaced elements other than <a>widgets</a> are not affected by this,
1820
1825
and remain replaced elements.
1821
- Controls are <em> not </em> made to look like native controls of the host operating system .
1826
+ <a>Widgets</a> must not have their <a> native appearance</a> .
1822
1827
See [[#appearance-decorative]] and [[#appearance-semantics]] for details.
1823
1828
1824
1829
<dt> <dfn>auto</dfn>
1825
1830
<dd>
1826
- UAs may render controls using native controls of the host operating system
1827
- or with a look and feel not otherwise expressible in CSS.
1831
+ <a>Widgets</a> may have their <a>native appearance</a> .
1828
1832
1829
- Elements other than controls must be rendered as if ''appearance/none'' had been specified.
1833
+ Elements other than <a>widgets</a> must be rendered as if ''appearance/none'' had been specified.
1830
1834
1831
1835
<dt> <dfn>button</dfn>
1832
1836
<dd>
@@ -1875,8 +1879,7 @@ so that CSS can be used to restyle them.
1875
1879
some of these values need to be promoted to being full blown values
1876
1880
with effects on arbitrary elements like ''button'' ,
1877
1881
or that
1878
- some of these values need to have some side effects on some controls.
1879
-
1882
+ some of these values need to have some side effects on some <a>widgets</a> .
1880
1883
1881
1884
</dl>
1882
1885
@@ -1906,7 +1909,7 @@ so that CSS can be used to restyle them.
1906
1909
and activating (for example by clicking) the element would toggle the state as usual.
1907
1910
</div>
1908
1911
1909
- On controls where the computed value is ''appearance/auto'' or one of the <<compat-auto>> values,
1912
+ On <a>widgets</a> where the computed value is ''appearance/auto'' or one of the <<compat-auto>> values,
1910
1913
and on any element where the computed value is ''appearance/button'' ,
1911
1914
UAs may disregard some CSS properties
1912
1915
to ensure that the intended appearance is preserved,
@@ -1935,7 +1938,7 @@ Issue: Are there more properties should include in this list?
1935
1938
Should we remove some?
1936
1939
Should whitelist the properties that are ok to ignore instead of
1937
1940
blacklisting those that are not?
1938
- Either way, UAs do ignore some properties when rendering controls ,
1941
+ Either way, UAs do ignore some properties when rendering <a>widgets</a> ,
1939
1942
so this specification needs to say something about this.
1940
1943
1941
1944
For compatibility with legacy content, UAs must also support <dfn property export>-webkit-appearance</dfn>
@@ -1944,7 +1947,7 @@ as a [=legacy name alias=] of 'appearance'.
1944
1947
<h4 id=appearance-decorative>
1945
1948
Effects of 'appearance' on Decorative Aspects of Elements</h4>
1946
1949
1947
- All decorative visual aspects of a control which are not caused by a CSS style rule
1950
+ All decorative visual aspects of a <a>widget</a> which are not caused by a CSS style rule
1948
1951
must be suppressed when the appearance is changed using 'appearance' ,
1949
1952
even if the UA's internal representation for this element
1950
1953
was composed of multiple elements or pseudo elements combined together.
@@ -1957,14 +1960,14 @@ was composed of multiple elements or pseudo elements combined together.
1957
1960
</div>
1958
1961
1959
1962
UAs should include in their User Agent stylesheet style rules
1960
- to give controls a recognizable shape when 'appearance' is ''appearance/none'' .
1963
+ to give <a>widgets</a> a recognizable shape when 'appearance' is ''appearance/none'' .
1961
1964
1962
1965
Note: Authors may therefore need to override these UA style rules to get the styling
1963
1966
they intended.
1964
1967
1965
1968
<div class=advisement>
1966
1969
Authors may find it convenient to use ''all: unset'' ,
1967
- to get fully unstyled controls
1970
+ to get fully unstyled <a>widgets</a>
1968
1971
which they can then style as they want without interference from the browser's UA stylesheet.
1969
1972
However, this also suppresses the focus indicators provided by the same UA stylesheet.
1970
1973
In order avoid damaging accessibility,
@@ -1975,16 +1978,16 @@ they intended.
1975
1978
<h4 id=appearance-semantics>
1976
1979
Effects of 'appearance' on Semantic Aspects of Elements</h4>
1977
1980
1978
- UAs must preserve aspects of the control
1979
- which are necessary to operate the control with its original semantics.
1981
+ UAs must preserve aspects of the <a>widget</a>
1982
+ which are necessary to operate the <a>widget</a> with its original semantics.
1980
1983
The UA may however give them a different look and feel
1981
- as long as it remains possible to operate the control .
1982
- Aspects of a control which are merely needed to observe the state the control is in
1984
+ as long as it remains possible to operate the <a>widget</a> .
1985
+ Aspects of a <a>widget</a> which are merely needed to observe the state the <a>widget</a> is in
1983
1986
and are not needed to operate it
1984
1987
should be suppressed as well
1985
1988
when the same information can be conveyed using ordinary CSS.
1986
1989
Document languages should specify
1987
- for each control that they define
1990
+ for each <a>widget</a> that they define
1988
1991
what needs to be preserved.
1989
1992
1990
1993
<div class=example>
0 commit comments