对于我工作的组织,有一个所有 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/