如何避免Vue引入CSS文件导致的全局样式污染问题?

2026-04-02 21:031阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计491个文字,预计阅读时间需要2分钟。

如何避免Vue引入CSS文件导致的全局样式污染问题?

目录 + 引入CSS文件导致全局污染 + Vue避免全局样式污染的正确做法 + 解决方案 + 引入CSS文件导致全局污染

1.在单组件的style中写CSS样式,如果标签内不加scoped可能影响其他组件的样式 + st

目录
  • 引入css文件导致全局污染
  • vue避免全局样式污染的正确做法
    • 解决方案

引入css文件导致全局污染

1.写在单组件的style里面css样式,如果标签内不加scoped可能会影响其他组件的样式

<style scoped></style>

2.通过import引入的外部css文件,这种引入方式是全局的,也会影响其他组件的页面样式

所以可以通过一下方法引入,则不会影响其他组件的页面样式

<style src="文件路径"></style>

vue避免全局样式污染的正确做法

说明问题:

样式全局污染产生的bug,会影响到其他页面原有的样式,导致每个页面的样式互相冲突,如果写的代码造成了全局样式污染,导致别人的页面每个地方都要去写自定义页面的代码,导致工作量巨大,严重的话,领导会让你当场辞职。

解决方案

1.避免造成全局污染,每个vue页面必须加上scoped

<style lang="scss" scoped> .app-container { flex: 1; padding: 15px; box-sizing: border-box; background: #fafafa; </style>

2.如果要修改element ui里面的底层样式,需要修改的页面加上::v-deep

::v-deep { .el-input, .el-select { display: inline-block; width: 240px; } .radioGroup { width: 240px; } }

3.如果所有的页面都复用使用main.js引入public.scss,具体的代码在这个scss里面写

import '@/assets/styles/public.scss' // global css

4.如果几个页面复用,那么在styles文件夹,里面创建个独立的scss,复用的代码写在这个文件里面。

@import "~@/assets/styles/apply.scss";

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。

如何避免Vue引入CSS文件导致的全局样式污染问题?

标签:问题

本文共计491个文字,预计阅读时间需要2分钟。

如何避免Vue引入CSS文件导致的全局样式污染问题?

目录 + 引入CSS文件导致全局污染 + Vue避免全局样式污染的正确做法 + 解决方案 + 引入CSS文件导致全局污染

1.在单组件的style中写CSS样式,如果标签内不加scoped可能影响其他组件的样式 + st

目录
  • 引入css文件导致全局污染
  • vue避免全局样式污染的正确做法
    • 解决方案

引入css文件导致全局污染

1.写在单组件的style里面css样式,如果标签内不加scoped可能会影响其他组件的样式

<style scoped></style>

2.通过import引入的外部css文件,这种引入方式是全局的,也会影响其他组件的页面样式

所以可以通过一下方法引入,则不会影响其他组件的页面样式

<style src="文件路径"></style>

vue避免全局样式污染的正确做法

说明问题:

样式全局污染产生的bug,会影响到其他页面原有的样式,导致每个页面的样式互相冲突,如果写的代码造成了全局样式污染,导致别人的页面每个地方都要去写自定义页面的代码,导致工作量巨大,严重的话,领导会让你当场辞职。

解决方案

1.避免造成全局污染,每个vue页面必须加上scoped

<style lang="scss" scoped> .app-container { flex: 1; padding: 15px; box-sizing: border-box; background: #fafafa; </style>

2.如果要修改element ui里面的底层样式,需要修改的页面加上::v-deep

::v-deep { .el-input, .el-select { display: inline-block; width: 240px; } .radioGroup { width: 240px; } }

3.如果所有的页面都复用使用main.js引入public.scss,具体的代码在这个scss里面写

import '@/assets/styles/public.scss' // global css

4.如果几个页面复用,那么在styles文件夹,里面创建个独立的scss,复用的代码写在这个文件里面。

@import "~@/assets/styles/apply.scss";

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。

如何避免Vue引入CSS文件导致的全局样式污染问题?

标签:问题