EnZ*_*nZo 1 css css-selectors svelte
当我的组件中可能存在内部元素时,为什么 svelte 会声明未使用的 CSS 选择器?
<div class="users">
{#each [1,2,3,4,5] as id}
<User name={id} />
{/each}
</div>
<style>
.users > * {
margin-right: 5px;
}
</style>
Run Code Online (Sandbox Code Playgroud)
错误:
Unused CSS selector ".users > *" (12:4)
回复: https://svelte.dev/repl/6c8b4a6a808c4aee80e51af58b4fcda4 ?version=3.44.0
用户是一个普通的div。不确定我是否应该使用另一种模式来实现这一目标。
多件事:
users我在你的代码中没有看到一个类,它div有一个类container,我猜你的意思是这个div,但元素位于内部User,所以这不起作用解决方案:使用:globalwhich 告诉 Svelte 不要将选择器的范围限定为当前组件:
<script>
import User from './User.svelte'
</script>
<div class="users">
{#each [1,2,3,4,5] as id}
<User name={id} />
{/each}
</div>
<style>
/* you could also write :global(.users > *) but that
would also target any "users" class somewhere else */
.users > :global(*) {
border: 3px solid teal;
}
</style>
Run Code Online (Sandbox Code Playgroud)