5

我有很多从 Rails 2.x 应用程序升级到 Rails 3.2.8 的遗留 CSS 文件,我想切换到使用 Rails 资产管道来处理样式表。问题是,CSS 的东西在大量的代码、重复的文件名和无组织的文件夹结构方面很混乱。

在浏览了各个页面并尝试将各个样式表和文件夹添加到资产管道中并花费一些周期进行调试之后,我意识到可能有更好的方法。

有没有办法测试以确保旧 CSS 与资产管道 CSS 匹配?测试和调试 CSS 的好工具有哪些?

4

2 回答 2

1

这实际上是一个很好的问题。我只知道一个名为wraith的工具,它可以截取您的页面并比较它们的差异。允许对您的设计进行回归测试。不过,您需要对每一页进行测试。

如果你查看你的浏览器,你也可以看到哪些 CSS 选择器没有被使用。您可以从删除整个页面中未使用的样式开始。

我认为你将不得不吃苦头并一点一点地重构你的 CSS。sass 和 scss 可能会帮助你。

不过,在某些时候,从一张白纸开始可能会更好。只需从一页开始并从头开始创建 CSS。至少你知道它的样子……

于 2013-10-14T18:09:00.937 回答
0

我的情况与大型遗留应用程序类似。虽然我还没有进行转换,但以下是我期待的步骤:

  • 在禁用资产管道的情况下升级到最新的 Rails 3.2.x(已完成,但现在仍在测试)
  • 升级到最新的 Rails 4.x(因为资产管道在版本之间发生了变化)
  • 将我的 css 页面划分为适用于每个页面的页面和特定于页面的页面。对于资产管道,仅包括适用于每个页面的那些,并激活管道。
  • 随着时间的推移,重写 CSS 以便页面特定规则可以包含在全局规则中,直到所有内容都在第一类中。

我看到了升级到与资产管道无关的 Rails 3.2 的优势,所以这是一个胜利。我有许多 CSS 和 JS 文件可以(或可以)在每个页面上加载而不会发生冲突,因此进入那个阶段应该是一些改进。可以随着时间的推移转换剩余的样式表,并且希望以一种安全的方式进行。

希望这可以帮助。我期待看到那些在一个不那么简单的 Web 应用程序上进行这种转换的人的任何其他答案。

于 2013-10-14T19:41:51.850 回答