Re: [CSS21] Are vendor-specific extensions invalid?

Patrick Garies wrote:
> 
> Christof Hoeke wrote:
>>  I did not check but I think there are quite a few properties working
>>  in browsers which are not in any spec yet (is opacity in 2.1 yet?).
>>  Anyway, there will be always new properties coming which are first
>>  implemented and then spec'ed (which is a good thing though as it uses
>>  CSS forward compatibility)
> 
> The |opacity| property appears in CSS3. I don’t see why it would need to 
> be added to CSS2.1.

guess as long as even CSS2.1 is not in Recommendation state it does not 
help, true (I falsely assumed that it is but it takes a long time I know)

> Christof Hoeke wrote:
>>  I don't want to start the discussion how to write x-browser CSS ;)
> 
> I’m well aware of the kind of problems that have to be dealt with in 
> writing cross‐browser compatible CSS (mainly: Internet 
> Explorer‐compatible CSS). I was wondering which properties that you are 
> using that can’t simply be hidden in a style sheet accessible only 
> through a conditional comment * or validated by changing the W3C’s CSS 
> validator’s used profile to that for CSS3.

Of course IE is the main problem but there are quite a few differences 
between FF - Safari/Webkit and Opera (not even counting other UA like 
e.g. PrinceXML) and there are even some differences between FF2 and the 
new FF3 (floating mainly). Normally I am not after pixel-perfect layout 
  in all browsers but there are some issues clients are nervous about 
especially floating stuff which may destroy a layout completely. So even 
if I would put IE specific stuff in conditional comment  stylesheets 
theses problems remain. That is also the reason why I do not use 
conditional comment sheets as I would have to use (still valid) "hacks" 
for e.g. FF2/3 AND have additional sheets for IEs

> * Well, this sort of assumes that you place less priority on the 
> validity of Internet Explorer‐only style sheets.

As IE if still the browser most used and (sadly) most of our clients use 
it inhouse (and mostly not even IE7 yet which is a bit more predictable) 
the people who pay would not get the best experience so this is a bit 
difficult to explain ;)


(An apology to this list, I guess this discussion should not be done 
here...)

> 
> Christof Hoeke wrote:
>>  For my part I prefer a single CSS where I do not have to change the
>>  HTML and add more than one HTTP request for styles to my page.
> 
> You have to change the HTML, yes. However, it can be done so that there 
> is only one HTTP request per browser via “downlevel‐revealed” CCs; 
> unfortunately, this means that both sets of style sheets need to be 
> independent of one another (i.e., this method requires more maintenance 
> than others). Alternatively, you can have the IE style sheet override 
> the relevant parts of the default style sheet; this means that only 
> Internet Explorer users need to make multiple HTTP requests.

again not really sufficient as described above. Also "only IE users" 
means most of the time >70% of the users ;)


> Christof Hoeke wrote:
>>  Still there are properties (like opacity you mentioned above) which
>>  are defined in CSS 3 (more or less as it is not a recommendation yet,
>>  is it?) but not in 2.1 (and adding more properties or values should
>>  probably rise the version number anyway.
> 
> CSS3 is a set of modules; it’s not a single specification, so it can’t 
> become a recommendation. No CSS3 module has made W3C Recommendation 
> status yet (that I know of); CSS3 Color (which defines the |opacity| 
> property) is the module closest to becoming a W3C Recommendation. CSS2.1 
> isn’t even a W3C Recommendation yet, for that matter. Again, I don’t see 
> why you have the concern that |opacity| is not defined in CSS2.1.
> 
> Christof Hoeke wrote:
>>  I have not checked fully but I think they should be "well-formed" as
>>  they generally are just a FUNC token with content.
> 
> I was mainly concerned with the colon character in |progid:| with regard 
> to the |filter| property. Also, is |property: expression(x : y ? z);| 
> “well‐formed” CSS? As far as I can tell, neither are well‐formed.

Both are not if I read the grammar at 
http://www.w3.org/TR/css3-syntax/#grammar0 right, true. I thought it 
would be more open for future extensions. But I guess the current 
grammar was sufficient until now (except for MS) so cannot be that bad ;)


christof

Received on Tuesday, 29 July 2008 11:36:54 UTC