11<pre class='metadata'>
22Title : CSS Backgrounds and Borders Module Level 3
3- Status : CR
4- Date : 2017-10-17
5- Deadline : 2017-11-30
3+ Status : ED
64Work Status : Testing
75Shortname : css-backgrounds
86Level : 3
@@ -961,7 +959,7 @@ layer.
961959 neither an intrinsic width nor an intrinsic height, its size is
962960 determined as for ''contain'' .
963961
964- <p> Negative values are not allowed .
962+ <p> Negative values are invalid .
965963 </dd>
966964</dl>
967965
@@ -1416,11 +1414,21 @@ color ('border-color'), and thickness ('border-width') of the border.
14161414<p> These properties set the foreground color of the border specified
14171415by the <span class=property> border-style</span> properties.
14181416
1419- <p> 'Border-color' is a shorthand for the
1420- four 'border-*-color' properties. The four values set the top, right,
1421- bottom and left border, respectively. A missing left is the same as
1422- right, a missing bottom is the same as top, and a missing right is
1423- also the same as top.
1417+ <p> The 'border-color' property is a shorthand property for setting
1418+ 'border-top-color' , 'border-right-color' , 'border-bottom-color' , and 'border-left-color'
1419+ in a single declaration.
1420+
1421+ <p> If there is only one component value,
1422+ it applies to all sides.
1423+ If there are two values,
1424+ the top and bottom are set to the first value
1425+ and the right and left are set to the second.
1426+ If there are three values,
1427+ the top is set to the first value,
1428+ the left and right are set to the second,
1429+ and the bottom is set to the third.
1430+ If there are four values
1431+ they apply to the top, right, bottom, and left, respectively.
14241432
14251433
14261434
@@ -1488,10 +1496,21 @@ also the same as top.
14881496 and if it does what style it's drawn in
14891497 (if it is not overridden by a <a href="#border-images">border image</a> ).
14901498
1491- <p> 'Border-style' is a shorthand for the
1492- other four. Its four values set the top, right, bottom and left border
1493- respectively. A missing left is the same as right, a missing bottom is
1494- the same as top, and a missing right is also the same as top.
1499+ <p> The 'border-style' property is a shorthand property for setting
1500+ 'border-top-style' , 'border-right-style' , 'border-bottom-style' , and 'border-left-style'
1501+ in a single declaration.
1502+
1503+ <p> If there is only one component value,
1504+ it applies to all sides.
1505+ If there are two values,
1506+ the top and bottom are set to the first value
1507+ and the right and left are set to the second.
1508+ If there are three values,
1509+ the top is set to the first value,
1510+ the left and right are set to the second,
1511+ and the bottom is set to the third.
1512+ If there are four values
1513+ they apply to the top, right, bottom, and left, respectively.
14951514
14961515<p> Where
14971516<pre class=prod><dfn><<line-style>></dfn> = none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset</pre>
@@ -1644,13 +1663,23 @@ are not specified, but the values are constant throughout a
16441663<span> document</span> and thin ≤ medium ≤ thick. A UA could,
16451664e.g., make the thickness depend on the ''medium'' font size: one
16461665choice might be 1, 3 & 5px when the ''medium'' font size is 17px or
1647- less. Negative values are not allowed.
1648-
1649- <p> 'Border-width' is a shorthand that sets the
1650- four 'border-*-width' properties. If it has four values, they set top, right,
1651- bottom and left in that order. If left is missing, it is the same as right;
1652- if bottom is missing, it is the same as top; if right is missing, it is the
1653- same as top.
1666+ less. Negative values are invalid.
1667+
1668+ <p> The 'border-width' property is a shorthand property for setting
1669+ 'border-top-width' , 'border-right-width' , 'border-bottom-width' , and 'border-left-width'
1670+ in a single declaration.
1671+
1672+ <p> If there is only one component value,
1673+ it applies to all sides.
1674+ If there are two values,
1675+ the top and bottom are set to the first value
1676+ and the right and left are set to the second.
1677+ If there are three values,
1678+ the top is set to the first value,
1679+ the left and right are set to the second,
1680+ and the bottom is set to the third.
1681+ If there are four values
1682+ they apply to the top, right, bottom, and left, respectively.
16541683
16551684<p class="note"> Note that the initial width is ''medium'' , but the initial
16561685style is ''border-style/none'' and therefore the used width is 0.
@@ -1854,7 +1883,7 @@ radius. If the second value is omitted it is copied from the first.
18541883If either length is zero, the corner is square, not rounded.
18551884Percentages for the horizontal radius refer to the width of the
18561885border box, whereas percentages for the vertical radius refer to
1857- the height of the border box. Negative values are not allowed .
1886+ the height of the border box. Negative values are invalid .
18581887
18591888<div class="figure">
18601889 <p><img alt="Diagram of the inscribed ellipse" src="images/corner.png">
@@ -1964,16 +1993,21 @@ the margin is multiplied by the proportion 1 + (<var>r</var>-1)<sup>3</sup>,
19641993where <var> r</var> is the ratio of the border radius to the margin,
19651994in calculating the corner radii of the margin box shape.
19661995
1967- <h3 id="corner-clipping">Corner Clipping</h3>
19681996
1969- <p> A box's backgrounds, but not its <a href="#the-border-image">border-image</a> ,
1970- are clipped to the appropriate curve (as determined by 'background-clip' ).
1971- Other effects that clip to the border or padding edge (such as 'overflow'
1972- other than ''visible'' ) also must clip to the curve. The content of
1973- replaced elements is always trimmed to the content edge curve.
19741997
1975- <p> Also, the area outside the curve of the border edge does not
1976- accept pointer events on behalf of the element.
1998+ <h3 id="corner-clipping">Corner Clipping</h3>
1999+
2000+ <p> Although <a href="#the-border-image">border images</a> are not affected
2001+ by 'border-radius' ,
2002+ other effects that clip painting or event handling
2003+ to the border, padding, or content edge
2004+ must clip to their respective curves.
2005+ For example,
2006+ backgrounds clip to the curve specified by 'background-clip' ,
2007+ 'overflow' values other than ''visible'' to the curved padding edge,
2008+ [=replaced element=] content to the curved content edge,
2009+ pointer events to the curved border edge,
2010+ etc.
19772011
19782012<p class="note"> As 'border-radius' reduces the interactive area of an element
19792013authors should make sure the remaining interactive area conforms
@@ -2265,10 +2299,17 @@ The middle image part is discarded (treated as fully transparent)
22652299unless the ''fill'' keyword is present. (It is drawn over the background;
22662300see <a href="#border-image-process">Drawing the Border Image</a> .)
22672301
2268- <p> When four values are specified, they set the offsets on the top,
2269- right, bottom and left sides in that order. If the left is missing, it is
2270- the same as the right; if the bottom is missing, it is the same as the top;
2271- if the right is missing, it is the same as the top.
2302+ <p> If there is only one component value,
2303+ it applies to all sides.
2304+ If there are two values,
2305+ the top and bottom are set to the first value
2306+ and the right and left are set to the second.
2307+ If there are three values,
2308+ the top is set to the first value,
2309+ the left and right are set to the second,
2310+ and the bottom is set to the third.
2311+ If there are four values
2312+ they apply to the top, right, bottom, and left, respectively.
22722313
22732314<dl dfn-for=border-image-slice dfn-type=value>
22742315 <dt> <dfn><<percentage [0,∞]>></dfn>
@@ -2286,7 +2327,7 @@ if the right is missing, it is the same as the top.
22862327 i.e., treated as empty.)
22872328</dl>
22882329
2289- <p> Negative values are not allowed .
2330+ <p> Negative values are invalid .
22902331Computed values larger than the size of the image are interpreted as ''100%'' .
22912332
22922333<p> The regions given by the 'border-image-slice' values may overlap.
@@ -2346,9 +2387,21 @@ by default correspond to the border box, see 'border-image-outset'.
23462387<p> The four values of 'border-image-width' specify offsets that are used
23472388to divide the border image area into nine parts. They represent inward
23482389distances from the the top, right, bottom, and left sides of the
2349- area, respectively. If the left width is missing, it is the same as the right;
2350- if the bottom is missing, it is the same as the top; if the right is missing,
2351- it is the same as the top. Values have the following meanings:</p>
2390+ area, respectively.
2391+
2392+ <p> If there is only one component value,
2393+ it applies to all sides.
2394+ If there are two values,
2395+ the top and bottom are set to the first value
2396+ and the right and left are set to the second.
2397+ If there are three values,
2398+ the top is set to the first value,
2399+ the left and right are set to the second,
2400+ and the bottom is set to the third.
2401+ If there are four values
2402+ they apply to the top, right, bottom, and left, respectively.
2403+
2404+ Values have the following meanings:</p>
23522405
23532406<dl dfn-for=border-image-width dfn-type=value>
23542407 <dt> <dfn><<length-percentage [0,∞]>></dfn>
@@ -2368,7 +2421,7 @@ it is the same as the top. Values have the following meanings:</p>
23682421 instead.
23692422</dl>
23702423
2371- <p> Negative values are not allowed for any 'border-image-width' values.
2424+ <p> Negative values are invalid for any 'border-image-width' values.
23722425
23732426<p> If two opposite 'border-image-width' offsets are large enough that
23742427they overlap, then the used values of all 'border-image-width' offsets
@@ -2414,10 +2467,18 @@ them by <var>f</var>.
24142467
24152468
24162469<p> The values specify the amount by which the <a>border image area</a> extends beyond the border box.
2417- If it has four values, they set the outsets on the top, right, bottom and
2418- left sides in that order. If the left is missing, it is the same as the right;
2419- if the bottom is missing, it is the same as the top; if the right is missing,
2420- it is the same as the top.
2470+
2471+ If there is only one component value,
2472+ it applies to all sides.
2473+ If there are two values,
2474+ the top and bottom are set to the first value
2475+ and the right and left are set to the second.
2476+ If there are three values,
2477+ the top is set to the first value,
2478+ the left and right are set to the second,
2479+ and the bottom is set to the third.
2480+ If there are four values
2481+ they apply to the top, right, bottom, and left, respectively.
24212482
24222483<dl dfn-for=border-image-outset dfn-type=value>
24232484 <dt> <<length [0,∞]>>
@@ -2427,7 +2488,7 @@ it is the same as the top.
24272488 <dd> Represents an outset of the specified multiple of the corresponding computed <a href="#the-border-width">border-width</a> .
24282489</dl>
24292490
2430- <p> Negative values are not allowed .
2491+ <p> Negative values are invalid .
24312492
24322493<p> Portions of the border-image that are rendered outside the border
24332494box do not trigger scrolling. Also such portions are invisible to mouse
@@ -2692,7 +2753,7 @@ has been moved to the <a href="https://www.w3.org/TR/css3-break/">CSS Fragmentat
26922753
26932754 <dt> <dfn id="shadow-blur-radius">3rd <<length [0,∞]>></dfn>
26942755 <dd> Specifies the <dfn>blur radius</dfn> .
2695- Negative values are not allowed .
2756+ Negative values are invalid .
26962757 If the blur value is zero, the shadow’s edge is sharp.
26972758 Otherwise, the larger the value, the more the shadow’s edge is blurred.
26982759 See <a href="#shadow-blur">Shadow Blurring</a> , below.
@@ -2860,8 +2921,10 @@ Shadow Shape, Spread, and Knockout</h4>
28602921 the <i> spread distance</i> (and flooring at zero).
28612922 However, in order to create a sharper corner when the border radius is small
28622923 (and thus ensure continuity between round and sharp corners),
2863- when the <i> border radius</i> is less than the <i> spread distance</i> ,
2864- the <i> spread distance</i> of an outer shadow
2924+ when the <i> border radius</i> is less than the <i> spread distance</i>
2925+ (or in the case of an inner shadow,
2926+ less than the absolute value of a negative <i> spread distance</i> ),
2927+ the <i> spread distance</i>
28652928 is multiplied by the proportion 1 + (<var> r</var> -1)<sup> 3</sup> ,
28662929 where <var> r</var> is the ratio of the border radius to the <i> spread distance</i> ,
28672930 in calculating the corner radii of the spread shadow shape.
@@ -2996,8 +3059,8 @@ Changes since the 17 October 2017 Candidate Recommendation</h3>
29963059 <pre> <<shadow>> = <del> inset</del><ins> <<color>> </ins> ? && <<length>> {2,4} && <del> <<color>> </del><ins> inset</ins> ?</pre>
29973060 </blockquote>
29983061 <li>
2999- Spread radius adjustment is only applied to outer shadows ( and positive margins)--
3000- i.e. cases where the radius of curvature grows, rather than shrinks.
3062+ Spread radius adjustment is only applied to shadows and margins
3063+ where the radius of curvature grows, rather than shrinks.
30013064 (<a href="https://github.com/w3c/csswg-drafts/issues/1900">Issue 1900</a> )
30023065 <blockquote>
30033066 <p> To preserve the box's shape when spread is applied,
@@ -3006,8 +3069,10 @@ Changes since the 17 October 2017 Candidate Recommendation</h3>
30063069 the <i> spread distance</i> (and flooring at zero).
30073070 However, in order to create a sharper corner when the border radius is small
30083071 <ins> (and thus ensure continuity between round and sharp corners)</ins> ,
3009- when the <i> border radius</i> is less than the <i> spread distance</i> ,
3010- the <i> spread distance</i> <ins> of an outer shadow</ins>
3072+ when the <i> border radius</i> is less than the <i> spread distance</i>
3073+ <ins> (or in the case of an inner shadow,
3074+ less than the absolute value of a negative <i> spread distance</i> )</ins> ,
3075+ the <i> spread distance</i>
30113076 is multiplied by the proportion 1 + (<var> r</var> -1)<sup> 3</sup> ,
30123077 where <var> r</var> is the ratio of the border radius to the <i> spread distance</i> ,
30133078 in calculating the corner radii of the spread shadow shape.
@@ -3024,8 +3089,11 @@ Changes since the 17 October 2017 Candidate Recommendation</h3>
30243089 Cleaned up and regularized “Animation type” and “Computed value” lines
30253090 in the property definition tables.
30263091 <li>
3027- Changed syntax to use <a>bracketed range notation</a>
3028- to reflect the prose restrictions on negative values.
3092+ Changed syntax to use the new <a>CSS bracketed range notation</a>
3093+ to reflect the prose restrictions on negative values,
3094+ and corrected a few grammar definition errors introduced in the previous publication.
3095+ <li>
3096+ Minor editorial improvements.
30293097</ul>
30303098
30313099<h3 id="changes-2014-09">
@@ -3122,10 +3190,10 @@ review period. For details, see the full <a href="https://drafts.csswg.org/css-b
31223190 property reset.
31233191
31243192 <li> <a href="#the-border-width">Section 4.3</a> : Added that negative
3125- lengths are not allowed on 'border-width' .
3193+ lengths are invalid on 'border-width' .
31263194
31273195 <li> <a href="#the-border-radius">Section 5.1</a> : Added that
3128- negative lengths are not allowed on 'border-radius' .
3196+ negative lengths are invalid on 'border-radius' .
31293197
31303198 <li> <a href="#border-image-tables">Section 6.8</a> : Added a section
31313199 about the effect of 'border-image' on tables with collapsed borders
0 commit comments