更新元素的innerHTML,注意:內容按普通HTML插入-不會作為Vue模板進行編譯。在網站動態渲染反任意的HTML都是非常危險的,容易導致XSS攻擊。
只在可信內容上使用V-HTML,永不用再用戶提交的內容上;
再單文件組件里面。scoped的樣式不會應用再v-html內容,因為那部分HTML沒有被Vue的模板編譯器處理。如果你希望針對v-html的內容設置帶作用域的css
demo:
html結構
data數據:
css:
呈現的效果:
scoped中的樣式沒有作用到v-html中的元素
解決辦法:
1 直接在v-html的內容元素加style樣式
2 添加全局樣式
3 使用深度作用選擇器
>>>
<style scoped>div >>> h2{color:red}</style>
有些像Sass之類的預處理器無法正確解析>>>.這種情況下你可以使用/deep/ 或者 ::v-deep操作符取而代之--兩者都是 >>>的別名