vue(v-html)和scss的使用问题

发布于 2022-09-04 20:25:36 字数 578 浏览 12 评论 0

<!--temp是一组p标签-->
<div class="lyric-container" v-html="temp"></div>
<style lang="scss" scoped>
.lyric-container{
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 1.25rem;

    p {//这个规则不会应用
        font-size: 0.16rem;
        color: rgb(170, 170, 170);
    }
}
</style>

图片描述

现在的问题是在用scoped的情况下,p标签要怎么样才能应用上样式。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

梦忆晨望 2022-09-11 20:25:36

以前遇到过一样的问题,动态生成的元素没有样式,后面用了个暴力的方法解决,写了两个style标签。

<style lang="scss" scoped>
//这里是页面本来有的
</style>

<style lang="scss">
//这里写动态生成的
</style>
看海 2022-09-11 20:25:36

scoped限制了样式只在本页面应用,把scoped去掉就可以了。

情感失落者 2022-09-11 20:25:36

可以尝试使用!important
不过直接给p标签加上class会不会比较好

优雅的叶子 2022-09-11 20:25:36

作者回答的:

https://github.com/vuejs/vue-...

按照作者说的, 给外层容器加个类名, 然后用后代选择器, 不过我试过没用, 然后我在下面回复了, 作者还未回复, 不过我估计作者也不会回复了, 因为这个问题有很多种解决办法, 只是比较丑而已.
搜索到了这个人写的:

https://blog.hinablue.me/vuej...

测试无效.

温馨耳语 2022-09-11 20:25:36

写两个style 其中一个不加scoped就好了 有时候需要给引用的子组件定位也要这样

回忆追雨的时光 2022-09-11 20:25:36

vue-loader提供了 两种操作符来实现深度选择
door

孤独陪着我 2022-09-11 20:25:36

有几种解决办法:
1、混用本地和全局样式:
<style>
/ 全局样式 /
</style>

<style scoped>
/ 本地样式 /
</style>
2、 针对">>>" 操作符无效,你可以试试"/deep/"操作符( Sass 等预处理器无法正确解析 >>>)
3、多看文档……

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文