- From: Ian Hickson <py8ieh@bath.ac.uk>
- Date: Sun, 29 Aug 1999 00:03:32 +0100 (BST)
- To: Jelks Cabaniss <jelks@jelks.nu>, "L. David Baron" <dbaron@fas.harvard.edu>
- cc: www-style@w3.org
On Mon, 19 Jul 1999, Jelks Cabaniss wrote: > Eric Meyer wrote: > > > P {font-size: 8pt+ 9pt 12pt-} > > But with the suggestions so far, AFAICT current-generation browsers won't > understand that they should read that as "font-size: 9pt". The !minimum/!maximum rule would, so long as the current browsers correctly implement the grammar and error handling rules of CSS1. On Mon, 19 Jul 1999, L. David Baron wrote: > > Maybe someone should just invent these rules and then we would have > > something concrete to discuss... ;-) > > Here are the rules I've had in mind - which would be as close to > compatible with min-width and max-width as possible. The rules in > section 6.4.1 of CSS2 [1] would be applied separately to all > declarations with priority ~= "minimum" and with priority ~= "maximum" > and other declarations. Then, to find the computed value of the > property: > > 1. let max = the computed value computed from the specified value > cascaded above for declarations with priority ~= maximum > 2. let min = ... for declarations with priority ~= minimum > 3. let comp = ... for declarations not used above > 4. if comp > max, then let comp = max > 5. if comp < min, then let comp = min Yes, this seems to be a good set of rules. Nice. > Problems with this approach: > * saying there's no maximum (to override another declaration) would > now require a new length value No big deal: the new length value could be called 'infinity' and would only apply to !maximum property/value pairs. The minimum equivalent could be called -infinity. > * there might be a better solution than the one currently used > for (min|max)-width Maybe, but it wouldn't be very simple... > Advantages with this approach: > * it exactly mimics the behavior of (min|max)-width > * it's easy to give something exactly in a user stylesheet (although > perhaps the cascading rules could make this unnecessary): > > font-size: 20px ! important maximum minimum; And other advantages are: no new properties, backwards compatible, simple concept to explain, probably relatively easy to implement, works with the cascade. > By the way, I might prefer a syntax such as: > > min(width): 20%; > > but this is not allowed by the grammar [2]. And also it doesn't work very well with the idea of functions -- what you are doing there is assigning something to a function! > Perhaps something like: > > @minimum { > width: 20%; > } > > could be acceptable. It could, but I think using the !xxx syntax is neater. > [1] http://www.w3.org/TR/REC-CSS2/cascade.html#cascading-order > [2] http://www.w3.org/TR/REC-CSS2/syndata.html#tokenization -- Ian Hickson : Is your JavaScript ready for Nav5 and IE5? : Get the latest JavaScript client sniffer at : http://developer.netscape.com/docs/examples/javascript/browser_type.html
Received on Saturday, 28 August 1999 19:03:39 UTC