XHTML 1.0 Transitive,有没有可以重构HTML的工具?

时间:2010-05-26 13:07:43

标签: asp.net html xhtml automated-refactoring

我有一个使用以下配置设置运行的Asp.net Web应用程序。

<xhtmlConformance mode="Legacy"/>

这限制了AJAX的使用以及与多个浏览器的兼容性。

如果我的理解是正确的,那么需要修复aspx页面的HTML代码以符合XHTML 1.0 Transitional。

有很多HTML页面,~1000,是否有可以加快这一过程的工具?

4 个答案:

答案 0 :(得分:2)

DMS Software Reengineering Toolkit是一种自动批量转换为大型源代码库的工具。

DMS使用语言精确的解析器来读取源代码,使用langauge精确的分析器来确定含义或问题。可以使用Source to Source program transformations来执行表单的更改,“如果您看到 this ,则将其替换为 ”,并根据语言表面语法进行说明。模式由语言语法驱动,并应用于DMS解析器生成的AST。

DMS具有各种语言的语言前端,包括HMTL和XHTML。

DMS已用于“脏”HTML(即使有精确的定义!)来重构它。它可能非常适合您的修复1000页问题。

答案 1 :(得分:1)

目前的网页是HTML还是XHTML?如果它们是HTML格式,保留。使用XHTML没有任何好处。

答案 2 :(得分:1)

HTML 5支持使用XML语法,因此从遗留HTML迁移到XHTML将具有一些长期优势,因为您的页面在语法上是正确的,这样可以在完成后更容易地移动到HTML 5或XHTML 2

正如David Dorward在他的回答中指出的那样,HTML Tidy如果你有相当稳定的HTML标记可能会有用,但考虑到页面的数量,如果是这样的话,我会感到惊讶。如果你在谷歌搜索“legacy html to xhtml tool”,那么其他一些可能值得研究的工具可能会有用。

要考虑的另一件事是如何编写页面。大多数遗留HTML页面在标记和样式之间没有明确的分离,因此您可能不得不为CSS文件提取样式,以便自动工具可以被击中或遗漏。因此,您可能正在考虑这样一种情况:最好的办法是坐下来使用网站并通过W3C Markup Validation Service之类的验证程序运行页面,或者使用浏览器插件在您进行测试时进行测试正在浏览网站。 Firefox的Html Validator非常好,这通常是我测试Web应用程序的方式。这样做的缺点是,如果在代码隐藏页面中生成任何HTML,您可能在测试期间不会遇到它。

答案 3 :(得分:0)

Tidy可能是最好的,但我从来没有对它完全满意,如果代码那么糟糕,通常表明它需要重写。