有什么理由不写我自己的HTML?

时间:2012-05-24 15:29:10

标签: html seaside

在Seaside中,在所有renderContentOn:方法中,我可以使用HTML画布对象来组合我的DOM树。

我正在为我的组件编写一堆帮助程序,因为我使用Twitter Bootstrap进行样式设置,并且不想一直编写所有样板代码(<div> s mas)。

对于这个设置的方式,对我来说最简单的方法就是简单地(我想避免在这些帮助器中使用with: aBlock)写出包装DIV的HTML,如下所示:

html html: '<div class="control-group">'.

我有什么理由不这样做吗?有任何缺点吗?

3 个答案:

答案 0 :(得分:6)

使用HTML画布有各种优点:

  • HTML画布确保有效标记,有效的标记结构,所有标记都正确关闭(在编译时),并且内容被正确转义。
  • HTML画布确保有效的属性,所有属性都已正确关闭,并且内容已正确转义。
  • 由于上述两个原因,HTML画布自动避免了跨站点脚本(XSS)漏洞的可能性。
  • HTML画布通过启用标签组合(简单函数调用),演示者(对象中的renderOn:)和组件(renderContentOn:组件)来实现更好的可重用性。
  • HTML画布避免生成不必要的空格。
  • 使用HTML canvas可以使用Smalltalk IDE在HTML代码上提供的标准工具:发件人,实现者,重构引擎(提取到方法,提取到组件,内联方法,自动重写......)等等

我同意在极少数情况下使用HTML canvas是不值得的:例如,当需要将来自外部源的大型静态垃圾嵌入到页面中时。

答案 1 :(得分:1)

我认为渲染静态html片段并不存在真正的缺点。

但是,您可能希望查看Twitter引导程序的Seaside集成:http://twitterbootstrap.seasidehosting.st/

答案 2 :(得分:0)

改述Lukas的一个论点:它基本上不是DRY。如果你只使用它一次,没有问题。如果必须多次使用,画布允许您使用smalltalk为您提供的所有干净重用功能。