Skip to content

Commit 286fc68

Browse files
committed
[css-conditional-values] Changes
1 parent ebaa001 commit 286fc68

File tree

1 file changed

+25
-4
lines changed

1 file changed

+25
-4
lines changed

css-conditional-values/Overview.bs

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,10 +86,14 @@ before being passed to any of the above procedures.)
8686
</div>
8787

8888
The host syntax defines how relative values (such as percentages or em units) are resolved in <<comparison-operand>>.
89-
When <<condition>> is used in a declaration, these relative values resolve against the declaration property.
89+
When <<condition>> is used in a declaration,
90+
these relative values resolve in the same way as regular values in the declaration property.
9091

91-
Note: Why are using '=' for equality and not ':' as is established in [[css-conditional-4]] already?
92+
Note: Why are we using ''='' for equality and not ':' as is established in [[css-conditional-4]] already?
9293
Because a lot of third party code (syntax highlighters etc) assumes that colons separate declarations and would break.
94+
Also, ''foo: bar'' establishes a key-value pair,
95+
whereas in equality comparisons the two operands are of equal weight,
96+
and do not establish a key-value pair.
9397

9498
Issue: Do we need a "not equals" operator or is 'not(op1 = op2)' sufficient?
9599

@@ -125,10 +129,20 @@ Issue: Define these concepts for comparisons (currently they point to calc())
125129
Inline conditionals: The ''if()'' function
126130
===========================================
127131

128-
The ''if()'' function allows authors to set a property value (or parts thereof) to different values based on certain conditions.
132+
The ''if()'' function allows authors to set a property value (or parts thereof)
133+
to different values based on certain conditions.
129134

130135
<pre class="prod def">
131-
<<if()>> = if( <<condition>>, <<consequent>> [, <<antecedent>>])
136+
<<if()>> = if( <<condition>>, <<consequent>> [, <<antecedent>>]?)
137+
<<consequent>> = <<declaration-value>>
138+
<<antecedent>> = <<declaration-value>>
139+
</pre>
140+
141+
Issue: How can authors specify consequents or antecedents that include commas?
142+
Alternative syntax that adresses this, though may be hard to read when consequent/antecedent are keywords:
143+
144+
<pre class="prod def">
145+
<<if()>> = if( <<condition>> then <<consequent>> [else <<antecedent>>]?)
132146
<<consequent>> = <<declaration-value>>
133147
<<antecedent>> = <<declaration-value>>
134148
</pre>
@@ -169,3 +183,10 @@ as the ''var()'' function, for the same reasons.
169183
Issue: How to disambiguate when used in a place where arguments are disambiguated by type?
170184
Unlike ''var()'', this cannot just be resolved at substitution,
171185
because we need to be able to interpret the values to compute the condition and perform the substitution accordingly.
186+
187+
Privacy and Security Considerations {#priv-sec}
188+
===============================================
189+
190+
This specification defines a purely author-level mechanism for specifying conditionals
191+
on styling information within a page they control.
192+
As such, there are no new privacy considerations.

0 commit comments

Comments
 (0)