是否有可能在ASP.NET Webforms中实现HTML5等新标准?

问题描述:

是否有可能(例如使用HTML5 Shiv)在基于Webforms的平台上实现HTML5? ASP.NET Webforms是否允许开发人员使用新的HTML5元素在语义上标记页面?是否有可能在ASP.NET Webforms中实现HTML5等新标准?

+1

我也在这种情况下,我们有ASP.NET webforms,并希望推动整个系统到一个新的技术水平。我们已经开始使用HTML5,引入了angularjs并停止使用服务器端标记( 2012-12-14 08:29:50

我想说ASP.net MVC更适合这种类型的开发,但我没有看到任何压倒性的原因,你为什么不能使用HTML5制作webforms页面,因为它大部分是对HTML4的扩展。

可能比RAD拖放网络表单(不幸的是)鼓励更多的手工编码页面。

+0

虽然(例如)是否可以使用ASP.NET控制器实现新的表单功能? – Jayphen 2010-07-21 12:40:17

+0

是的,我每天都在webforms中使用占位符,任何“none”识别属性都会添加到页面中。可能更难以通过代码隐藏添加这些,但我知道它是可能的。即( asp:TextBox>) – 2010-07-21 13:03:56

您可以创建将下降渲染到任何你想要的HTML元素自定义的控件..

您可以输出到任何你想要的HTML页面,你就必须来控制输出。因此,标准的Asp.Net控件集将输出到正常的HTML元素,如

<label /> and <input /> etc.。你可以很容易地做你自己的实现。

而且没有什么能阻止你添加自定义类或HTML5 CSS属性Asp.Net控件的HTML渲染,只是记住了HTML5没有很好地与实际的浏览器的使用率尚不支持..

+0

你也可以将runat ='server'放到任何HTML元素上控制它的许多属性并在运行时在代码中添加自定义属性,简单的示例在代码中可见='false'或myControl.visible = false。 – Markive 2010-07-21 12:42:14

+0

你是说你必须手动重写框架的某些部分才能让它使用“placeholder”属性输出表单输入字段,例如? 我在这里严格讨论HTML5这里btw,而不是CSS3(所以类名无关) – Jayphen 2010-07-21 12:43:25

+0

没有这么说你有一个文本框的id为'myTextbox',你在你的代码中做的所有事情是:myTextbox.Attributes.Add( “占位符”,“我的PlaceHolder文本”)。 Asp.Net不在乎.. 如果你正在做一些非常自定义的事情,你想重新使用它作为控件,你可能想看看控制模板/自定义控件。 – Markive 2010-07-21 12:47:15

我说是的你可以但如果你想做出复杂的改变,它不一定是容易的任务。您可以完全控制放置在aspx和ascx文件中的标记以及在您自己的自定义控件中生成的标记。在代码后面的代码中,您可以使用Attributes集合的控件添加HTML5特定的属性。对于构建Web控件,您可以创建自己的ControlAdapters,它将覆盖Web控件中的构建渲染。

检查此article控制适配器的说明。