Bug 11939 - Quirksmode: Ignores media types in stylesheet PIs
Summary: Quirksmode: Ignores media types in stylesheet PIs
Alias: None
Product: WebKit
Classification: Unclassified
Component: CSS (show other bugs)
Version: 420+
Hardware: Mac OS X 10.4
: P2 Normal
Assignee: Nobody
URL: http://www.quirksmode.org/bugreports/...
Keywords: HasReduction
: 18657 (view as bug list)
Depends on:
Blocks: 9610
  Show dependency treegraph
Reported: 2006-12-22 20:46 PST by David Kilzer (:ddkilzer)
Modified: 2008-04-29 23:21 PDT (History)
3 users (show)

See Also:

Test case from Comment #2 (1.68 KB, application/x-gzip)
2007-11-15 08:53 PST, David Kilzer (:ddkilzer)
no flags Details
Moved from bug 18657 (5.07 KB, patch)
2008-04-27 00:15 PDT, Rob Buis
eric: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description David Kilzer (:ddkilzer) 2006-12-22 20:46:48 PST
Safari ignores specified media types in stylesheet processing instructions. It loads all stylesheets instead.

Reported on 27 September 2006.

Test page: http://kennygraham.net/wsg_cssd/safaribug/  [BROKEN]

Tested on locally-built debug build of WebKit r18399 with Safari 2.0.4 (419.3) on Mac OS X 10.4.8 (8N1037).
Comment 1 David Kilzer (:ddkilzer) 2007-11-14 08:48:41 PST
WebKit supports CSS3 media queries as of r14779.  Safari 3 in Mac OS X 10.5 Leopard as well as the Safari 3 Public Beta in 10.4 Tiger both include this support.  I believe that fixes this issue.


Comment 2 Philippe Wittenbergh 2007-11-15 04:03:47 PST
No this is _not_ fixed.
Here is a test case:
(the original test case is missing).
Compare the rendering in WebKit/Safari 304 with what Gecko & Opera 9+ do.
WebKit applies all stylesheets, inclucing the media print one. It shouldn't.

Please reopen.

(and note: WebKit seems to treat this file as being in quirks mode, while it should treat it as standards mode. It is served as application/xhtml+xml)
Comment 3 David Kilzer (:ddkilzer) 2007-11-15 08:47:56 PST
Thanks for the test case, Philippe!  Reopening bug.
Comment 4 David Kilzer (:ddkilzer) 2007-11-15 08:53:55 PST
Created attachment 17295 [details]
Test case from Comment #2

The bug is that the "alternate" and "media" attributes of <?xsl-stylesheet?> tags in an application/xhtml+xml document are ignored, and all stylesheets are loaded.

If every stylesheet listed defines the same selectors, you get into a "last one loaded wins" situation (which is the case in this test case--try reordering the <?xsl-stylesheet?> tags).

Here is another web site that demonstrates the same issue:  http://www.reiermeister.de/
Comment 5 Maciej Stachowiak 2008-04-26 15:03:38 PDT
Might this be a duplicate of < https://bugs.webkit.org/show_bug.cgi?id=18657>?
Comment 6 Rob Buis 2008-04-27 00:13:05 PDT
*** Bug 18657 has been marked as a duplicate of this bug. ***
Comment 7 Rob Buis 2008-04-27 00:15:31 PDT
Created attachment 20847 [details]
Moved from bug 18657

This patch is moved from bug 18657, that is clearly a duplicate and this one is older:) It fixes the attached testcase to this one, unfortunately the original
bug testcase in quirksmode site seems gone.

Comment 8 Eric Seidel (no email) 2008-04-28 23:14:51 PDT
Comment on attachment 20847 [details]
Moved from bug 18657

Great!  r=me.  However, I would prefer that you fix setMedia to take a PassRefPtr while you're in that code.  It takes a raw ptr, but does take ownership of it (so your code doesn't leak) but at first glance it looks like it does.  setMedia pre-dates PassRefPtr I think.
Comment 9 Rob Buis 2008-04-29 23:21:44 PDT
Landed in r32719, including the PassRefPtr tweak.