css - 如何从需要不同布局的外部样式表中提取一些 css 规则

标签 css sass

对于我工作的组织,有一个所有 Web 应用程序都应该使用的通用样式表。

例如,他们希望某些元素在thead.table-sortable th.table-sortable-sorted-down a:after中添加排序图标。现在,在一个 Angular 应用程序中,我使用一个组件库 (primeng),它有一个简单的元素,该元素只有类 .pi-sort-up 用于相同的事情。

我怎样才能将组织 css 的一部分映射/复制/使用到我的应用程序的 css 中,只复制有趣的东西而不需要在组件上进行复杂的嵌套(无论如何我都无法真正控制)?

我们可以使用 css、sass,甚至可以在 javascript 中动态生成 css 规则。我宁愿避免在运行时为所有匹配的组件更改 DOM,因为它可能是非常动态的。

编辑:构建时解决方案(例如使用 sass)不是首选方式,但如果没有其他方式也可以接受。

最佳答案

如果公司样式表对您来说是只读,您根本无能为力。您必须在需要部分内容的地方加载整个文档。避免这种情况的一种可能的“解决方法”是编写一个后端程序(在 PHP 或 node.js 中),它打开公司样式文档并仅查找特定的 CSS 规则,然后将其复制并粘贴到其他样式文档。

然而,这种方法也是非常动态的,你需要为每个请求执行后端脚本,因为原始公司样式表可能总是改变......如果你的公司同意,你应该使用像 SASS 这样的预处理器或 LESS 并为公司风格定义一个结构,将其分成几个可以有意加载的文档。

关于css - 如何从需要不同布局的外部样式表中提取一些 css 规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57360327/

相关文章:

css - 将 CSS 属性应用于特定输入元素以及选择和文本区域时如何防止 "force-attribute-nesting"Sass-Lint 警告?

Rails 应用程序中的 CSS 与 SCSS

css - 如何移动矩形并将坐标作为全局来裁剪所选图像

css - 使用 :before/:after Selectors to add Margins Around Elements

html - CSS - 带边框的 UL 内联 LI 改变 block (v) 内联?

css - 如何设置路径以使用 Compass SASS 编译我的 CSS

css - 在文件名未知时在文件之间共享 SASS 变量

php - 用链接替换按钮

html - 如何使用自定义 css 制作圆形复选框?

json - Angular:如何将 JSON 变量解析为 SCSS