Skip to content

Commit 0ec2ce0

Browse files
committed
apply class for dynamic elements
1 parent d7557e1 commit 0ec2ce0

File tree

5 files changed

+41
-1
lines changed

5 files changed

+41
-1
lines changed

src/compiler/compile/css/Selector.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ function block_might_apply_to_node(block: Block, node: Element): BlockAppliesToN
299299
return BlockAppliesToNode.NotPossible;
300300
}
301301
} else if (selector.type === 'TypeSelector') {
302-
if (node.name.toLowerCase() !== name.toLowerCase() && name !== '*') return BlockAppliesToNode.NotPossible;
302+
if (node.name.toLowerCase() !== name.toLowerCase() && name !== '*' && !node.is_dynamic_element) return BlockAppliesToNode.NotPossible;
303303
} else {
304304
return BlockAppliesToNode.UnknownSelectorType;
305305
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export default {
2+
warnings: [],
3+
};

test/css/samples/dynamic-element-tag/expected.css

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<div class="svelte-xyz"></div>
2+
<h2 class="svelte-xyz">
3+
<div class="svelte-xyz"><b class="svelte-xyz">text</b></div>
4+
</h2>
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<script>
2+
export let element = 'div';
3+
</script>
4+
5+
<svelte:element this={element} />
6+
7+
<h2>
8+
<svelte:element this={element}>
9+
<b>text</b>
10+
</svelte:element>
11+
</h2>
12+
13+
<style>
14+
div {
15+
color: red;
16+
}
17+
h2 > p {
18+
color: red;
19+
}
20+
h2 span {
21+
color: red;
22+
}
23+
h2 > span > b {
24+
color: red;
25+
}
26+
h2 span b {
27+
color: red;
28+
}
29+
h2 b {
30+
color: red;
31+
}
32+
</style>

0 commit comments

Comments
 (0)