Comments (18)
Locally things are working. Please check with the latest SNAPSHOT
from ph-css.
I will look at it after my vacation :)
from ph-css.
Thanks! Have a great vacation : )
from ph-css.
The problem is the invalid selector. As you may know, there can be many selectors (e.g. .a,.b,.c
) and I need to know how browsers handle this. Do they skip only the selector parts they cannot handle or the whole rule.
Basically the same problem as in subissue 3 of #17
from ph-css.
@phax, according to Specs, the entire rule should be dropped. See https://www.w3.org/TR/css3-selectors/#Conformance:
In the case of CSS, the entire rule in which the selector is used is dropped.
and https://www.w3.org/TR/CSS2/syndata.html#rule-sets:
...the whole statement should be ignored if there is an error anywhere in the selector...
from ph-css.
I've also created a simple test and all browsers seem to comply with the specs: https://jsfiddle.net/aqdtzcac/1/ (tried Chrome, FF, IE 9/10/11, Safari on iOS and some androids as well).
from ph-css.
Thanks for the clarification. I'm working on a solution that works for you when you enable "browser compliant mode".
from ph-css.
Thanks Philip, good to know =)
Will it work for invalid selectors only or more generally for any problem in rule parsing?
from ph-css.
For invalid selectors only. As the parser is grammar based I need to differentiate between recoverable and unrecoverable errors. Creating a completely lax parser is currently out of scope :)
from ph-css.
@phax just so I know, do you have an estimate for the fix?
from ph-css.
within this week - but after 6 weeks of vacation there is plenty to do :)
from ph-css.
I have it locally working but been struggeling with some tests....
from ph-css.
Hi Philip, it is working just fine! The only question is - if it is going to be released in 5.0 stream, it will be incompatible with Java 1.7, right? Any chance to include this into 4.0 stream? We can't drop support for Java 7 unfortunately now...
from ph-css.
If necessary, we can contribute - under your guidance. We highly value your project and depend on it heavily, so we would be glad to do that.
from ph-css.
Well I already created a 4.1 backport and I think I can do the same for this fix.
Let me check tonight, if a 4.1.1 can be done with reasonable effort.
A donation link can be found at http://peppol.helger.com/public :)
from ph-css.
Release 4.1.1 is on its way to Maven central
from ph-css.
@phax , it's not a big thing, but just to let you know I added a mention of you and your project in our changes.html#thanks section
: apache/jmeter@d607b3a
Apache JMeter 3.0 will be using your library.
from ph-css.
Thanks for the info and good luck for JMeter!! It's a great tool I'm also using!
from ph-css.
Related Issues (20)
- @page :nth not supported HOT 1
- :not Selector parsed incorrectly HOT 2
- Unexpected rule '@': Unknown rule in the middle of a rule-set is not allowed! HOT 4
- Previous sibling selectors incorrectly parsed without whitespace HOT 12
- Unable to add declarations where property contains "--" or "@" HOT 3
- Strange exception when creating own shorthand descriptors HOT 2
- :lang with empty expression list parsed incorrectly HOT 3
- :host and ::slotted pseudo class/element functions are parsed incorrectly (used in shadow DOM) HOT 2
- Semantic distinction between an IDENT and a STRING within the CSSExpressionMemberTermSimple HOT 6
- :host and ::slotted parsing sort of wrong HOT 6
- CSSReaderDeclarationList missing methods to pass in CReaderSettings as argument HOT 1
- Scientific number notation not supported by parser HOT 4
- Add :host-context pseudo class function to the Parser HOT 3
- Scientific notation can also contain '.' HOT 7
- *IDENT (<=IE6 hack) in style declaration block, drops all declarations after this one (in browser compliant mode) HOT 7
- Class selector not supported inside :where HOT 5
- :nth-child(expr) is parsed as CSSSelectorSimpleMember HOT 1
- Support `@supports` HOT 1
- CSSParserHelper.unescapeURL not following the css escape diagram HOT 7
- Support for CSS nesting module HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ph-css.