为什么加载外部 JS 文件会破坏页面的样式?

Why does loading an extrnal JS file break the page's styling?

我遇到这样一种情况,即根据查询参数将外部 js 文件加载到页面上。该文件包含 UI 个组件及其样式。当文件加载时,它破坏了页面的样式。

我很难理解的是为什么页面元素具有相同的 css 类 但看起来不同。

没有JS文件

用JS文件

谢谢

您正在加载一个新的 JavaScript 文件,其中嵌入了 <style> 标签。这些由您在图像中看到的 inline 样式表示。

因为页面上已有的样式处于 inline 级别,如 以及 ,它们在 specificity 方面与新样式相关联.因此,应用的规则 last(由有条件添加的 JavaScript 文件)override 首先应用的规则(在基础中文档)。这可以通过图像中的删除线看出。正在加载这些规则,但正在被覆盖。