Closed
Bug 31059
Opened 25 years ago
Closed 23 years ago
css @media screws up js cssRules[i] access
Categories
(Core :: DOM: CSS Object Model, defect, P3)
Tracking
()
Future
People
(Reporter: andreas, Assigned: jst)
References
()
Details
(Keywords: dom2)
Attachments
(2 files)
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; QXW0330d)
BuildID: 2000022820
When iterating over all rules in a stylesheet execution stops where a @media
rule appears. I'm not shure what the CSS2 or DOM2 spec says about this, but the
current behaviour is quite weird. See HTML Testcase.
An @media rule in a stylesheet also seems to block js access to ANY rule in
that stylesheet.
Reproducible: Always
Steps to Reproduce:
Run HTML testcase from Additional Information
<html>
<head>
<style>
.s0r0 { color: red; }
</style>
<style>
.s1r0 { color: green; }
@media print {
.s1r1 { color: yellow; }
}
.s1r2 { color: blue; }
</style>
<style>
.s2r0 { color: purple; }
</style>
</head>
<!--===============================================================-->
<body>
<p class="s0r0">effect of s0r0</p>
<p class="s1r0">effect of s1r0</p>
<p class="s1r1">effect of s1r1</p>
<p class="s1r2">effect of s1r2</p>
<p class="s2r0">effect of s2r0</p>
<script>
<!-- function showStylesheets() { -->
doc
Reporter | ||
Comment 1•25 years ago
|
||
HTML testcase was too long for entry from.
Moved it to http://www.ars.ethz.ch/andreas/CssAtMediaProblem.htm
Comment 2•25 years ago
|
||
Comment 3•25 years ago
|
||
andreas@fh-konstanz.de - what is the expected behaviour here? I see colours
everywhere except the one that should be yellow. Or should it be yellow? I don't
know...
Gerv
The original testcase was invalid because it attempted to access the
selectorText property of a CSSMediaRule, and the property only exists for
CSSStyleRules. However, this is still a bug. Accessing a CSSMediaRule in any
way (well, I presume it's a CSSMediaRule) throws:
JavaScript error:
line 0: uncaught exception: [Exception... "Component does not have requested
interface" code: "-2147467262" nsresult: "0x80004002 (NS_NOINTERFACE)"
location: "file:///home/david/webtest/bug31059.html Line: 40"]
Confirming bug.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee | ||
Comment 6•24 years ago
|
||
Nominating for beta2 and reassigning to me.
Assignee: vidur → jst
Keywords: nsbeta2
Assignee | ||
Comment 8•24 years ago
|
||
This bug has been marked "future" because the original netscape engineer
working on this is over-burdened. If you feel this is an error, that you or
another known resource will be working on this bug,or if it blocks your work
in some way -- please attach your concern to the bug for reconsideration.
The origin of the bug is the non implementation of nsIDOMCSSRule in all css
rules but StyleRule. Correct access to cssRules[i] (or cssRules.item(i)) is
needed for stylesheet manipulation in the editor.
Updated•24 years ago
|
Component: DOM Level 2 → DOM Style
Comment 10•24 years ago
|
||
Taking QA Contact on all open or unverified DOM Style bugs...
QA Contact: vidur → ian
Comment 11•24 years ago
|
||
Nominating this bug for nsbeta1 on behalf of gerardok@netscape.com.
Keywords: nsbeta1
Comment 12•24 years ago
|
||
Working on the assumption that this bug is caused by the lack of implementation
of CSSMediaRule, and the fact that CSSMediaRule is not supposed to be
implemented at the moment, removing nsbeta1 nomination.
Keywords: nsbeta1
Comment 13•23 years ago
|
||
bz, will your work on nsIDOMCSSMediaRule fix this bug as well?
Comment 14•23 years ago
|
||
Er.... actually I fixed this a while back. The attached testcase (corrected
one) worksforme with a current trunk build.
Marking duplicate of the bug that has the patch that fixed this
("CSSNameSpaceRuleImpl and othes in nsCSSRules.cpp do not implement
nsIDOMCSSRule").
*** This bug has been marked as a duplicate of 79818 ***
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•