diff --git a/src/generators/extractSelectors.ts b/src/generators/extractSelectors.ts
index 25e0fa8a2c..d838296551 100644
--- a/src/generators/extractSelectors.ts
+++ b/src/generators/extractSelectors.ts
@@ -134,6 +134,10 @@ function attributeMatches(node: Node, selector: Node) {
return actualValue === expectedValue;
}
+ if(selector.operator === '~=') {
+ return actualValue.split(/\s/).indexOf(expectedValue) !== -1;
+ }
+
return true;
}
diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/_config.js b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/_config.js
new file mode 100644
index 0000000000..32cdf8cb79
--- /dev/null
+++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/_config.js
@@ -0,0 +1,6 @@
+export default {
+ cascade: false,
+ data: {
+ dynamic: 'whatever'
+ }
+};
\ No newline at end of file
diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/expected.css
new file mode 100644
index 0000000000..ca5ed2b2ba
--- /dev/null
+++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/expected.css
@@ -0,0 +1,4 @@
+
+ [data-foo~='bar'][svelte-25731322] {
+ color: red;
+ }
diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/expected.html b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/expected.html
new file mode 100644
index 0000000000..4908f49985
--- /dev/null
+++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/expected.html
@@ -0,0 +1,2 @@
+
this is styled
+
this is unstyled
\ No newline at end of file
diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/input.html b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/input.html
new file mode 100644
index 0000000000..e8e95d9eac
--- /dev/null
+++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals-dynamic/input.html
@@ -0,0 +1,10 @@
+
+
this is styled
+
this is unstyled
+
+
+
\ No newline at end of file
diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/_config.js b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/_config.js
new file mode 100644
index 0000000000..b37866f9b6
--- /dev/null
+++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/_config.js
@@ -0,0 +1,3 @@
+export default {
+ cascade: false
+};
\ No newline at end of file
diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.css
new file mode 100644
index 0000000000..20cf2fd9e3
--- /dev/null
+++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.css
@@ -0,0 +1,4 @@
+
+ [data-foo~='bar'][svelte-1786044856] {
+ color: red;
+ }
diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.html b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.html
new file mode 100644
index 0000000000..aef480d8ef
--- /dev/null
+++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.html
@@ -0,0 +1,2 @@
+this is styled
+
this is unstyled
\ No newline at end of file
diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/input.html b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/input.html
new file mode 100644
index 0000000000..026d7d6ed2
--- /dev/null
+++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/input.html
@@ -0,0 +1,10 @@
+
+
this is styled
+
this is unstyled
+
+
+
\ No newline at end of file