summaryrefslogtreecommitdiff
path: root/Libraries
diff options
context:
space:
mode:
Diffstat (limited to 'Libraries')
-rw-r--r--Libraries/LibHTML/Parser/CSSParser.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/Libraries/LibHTML/Parser/CSSParser.cpp b/Libraries/LibHTML/Parser/CSSParser.cpp
index de20713ca7..ad865ecfbc 100644
--- a/Libraries/LibHTML/Parser/CSSParser.cpp
+++ b/Libraries/LibHTML/Parser/CSSParser.cpp
@@ -301,8 +301,18 @@ public:
is_pseudo_element = true;
consume_one();
}
- while (is_valid_selector_char(peek()))
+ if (next_is("not")) {
+ buffer.append(consume_one());
buffer.append(consume_one());
+ buffer.append(consume_one());
+ buffer.append(consume_specific('('));
+ while (peek() != ')')
+ buffer.append(consume_one());
+ buffer.append(consume_specific(')'));
+ } else {
+ while (is_valid_selector_char(peek()))
+ buffer.append(consume_one());
+ }
auto pseudo_name = String::copy(buffer);
buffer.clear();