Css 是否可以删除GWT生成的HTML中的所有类前缀?
我目前在一个更大的GWT项目中担任网页设计师,我想建议重构我们的CSS。我想从DOM中删除所有的类前缀和混淆,而是使用干净的级联样式来防止冲突 我理解为什么GWT是这样工作的,但是通过我们使用它的方法,如果我们有一个更干净的DOM树,它将极大地加快开发速度 也就是说,在DOM中不是这样的类:Css 是否可以删除GWT生成的HTML中的所有类前缀?,css,gwt,obfuscation,Css,Gwt,Obfuscation,我目前在一个更大的GWT项目中担任网页设计师,我想建议重构我们的CSS。我想从DOM中删除所有的类前缀和混淆,而是使用干净的级联样式来防止冲突 我理解为什么GWT是这样工作的,但是通过我们使用它的方法,如果我们有一个更干净的DOM树,它将极大地加快开发速度 也就是说,在DOM中不是这样的类: GPJVK4TDFAB com项目名称项目文件夹项目子文件夹CSS资源-实际类名 我更喜欢这个: 实际类名 理想情况下,开发人员不必对其工作流程进行任何更改。我只想全局关闭前缀。我知道在某些情况下,这可能会
GPJVK4TDFAB com项目名称项目文件夹项目子文件夹CSS资源-实际类名 我更喜欢这个:
实际类名 理想情况下,开发人员不必对其工作流程进行任何更改。我只想全局关闭前缀。我知道在某些情况下,这可能会影响模块化工作的能力,但考虑到我们的项目和工作流程,我看不到任何缺点
如前所述,交叉引用会容易得多,而且在我看来,使用干净、严格的级联方法不会有冲突的风险。如果您使用的是CssResource,则需要注释所有不希望混淆的类。
@external
:
接口MyCssResource扩展了CssResource{
字符串模糊();
字符串legacySelectorA();
}
接口资源扩展ClientBundle{
@来源(“my.css”)
MyCssResource css();
}
@外部legacySelectorA、legacySelectorB;
.obfuscated.legacySelectorA{….}
.obfuscated.legacySelectorB{..}
.obfuscated
将被模糊化,而.legacySelector
s将不会被模糊化
有关更多信息,请参阅
没有“禁用模糊处理”全局设置,因为CssResources的整个概念是这样的,您不必担心重复的类名,只有GWT可以重命名您的类,这一点才能得到保证。CssResource提供的其他“杠杆和旋钮”,您可能会偶然发现,但不会有帮助:
只会导致,但仍会混淆
将只生成类名。。。“prettier”,也就是说,实际的类名将包含在模糊的名称中(您可能已经启用了它)