diff --git a/src/compiler/compile/render_dom/wrappers/Element/index.ts b/src/compiler/compile/render_dom/wrappers/Element/index.ts index 59d06b8c92..12cf7aaa1f 100644 --- a/src/compiler/compile/render_dom/wrappers/Element/index.ts +++ b/src/compiler/compile/render_dom/wrappers/Element/index.ts @@ -923,7 +923,7 @@ export default class ElementWrapper extends Wrapper { const snippet = expression.manipulate(block); let cached_snippet; if (should_cache) { - cached_snippet = block.get_unique_name(`style_${name}`); + cached_snippet = block.get_unique_name(`style_${name.replace(/-/g, '_')}`); block.add_variable(cached_snippet, snippet); } diff --git a/test/runtime/samples/inline-style-directive-string-variable-kebab-case/_config.js b/test/runtime/samples/inline-style-directive-string-variable-kebab-case/_config.js new file mode 100644 index 0000000000..3bd6d38ea5 --- /dev/null +++ b/test/runtime/samples/inline-style-directive-string-variable-kebab-case/_config.js @@ -0,0 +1,18 @@ +export default { + html: ` +
+ `, + + test({ assert, target, window }) { + const div = target.querySelector('div'); + const styles = window.getComputedStyle(div); + + assert.equal(styles['background-image'], 'url(https://raw.githubusercontent.com/sveltejs/branding/master/svelte-vertical.png)'); + assert.equal(styles.getPropertyValue('--css-variable'), 'rgba(0, 0, 0, 1)'); + + assert.htmlEqual( + target.innerHTML, + '
' + ); + } +}; diff --git a/test/runtime/samples/inline-style-directive-string-variable-kebab-case/main.svelte b/test/runtime/samples/inline-style-directive-string-variable-kebab-case/main.svelte new file mode 100644 index 0000000000..dbfba08d64 --- /dev/null +++ b/test/runtime/samples/inline-style-directive-string-variable-kebab-case/main.svelte @@ -0,0 +1,11 @@ + + +