.net 如何结束脚本标记?

.net 如何结束脚本标记?,.net,asp.net,script-tag,.net,Asp.net,Script Tag,我对网络编程相当陌生,读了一本关于ASP.NET的书,我注意到作者这样做了 <asp:ScriptManager ID="ScriptManager1" runat="server"/> 而不是VisualStudio所做的,这就是 <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> 第一种方法是可接受的且与多浏览器兼容的快捷方式吗?任何一种方法都可

我对网络编程相当陌生,读了一本关于ASP.NET的书,我注意到作者这样做了

<asp:ScriptManager ID="ScriptManager1" runat="server"/>

而不是VisualStudio所做的,这就是

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>


第一种方法是可接受的且与多浏览器兼容的快捷方式吗?

任何一种方法都可以接受,并且不会影响浏览器输出,因为
asp:ScriptManager
标记是在服务器端处理的

也就是说,你喜欢哪种风格是个问题。有些标记具有嵌套标记,需要使用第二种样式

但是,如果不是这样,那么在语义上,第一种样式称为自动关闭元素,在ASP.NET中与第二种语法具有相同的语义


我建议学习服务器端标记和客户端标记之间的区别,因为虽然它们在语法上相似,但结果可能会非常不同(例如,浏览器中的self-closing
script
标记在使用第三方库时通常不起作用).

我同意自动关闭标签适用于服务器端处理的标签。但是,如果您是web编程新手,请注意,并非所有浏览器中的客户端标记都是如此。有些(IE7)需要一个单独的结束标记。@Rune FS,它在所有doctype下的所有浏览器上都能正常工作,但当无法识别时,它被解析为

。用

(注意不要用空格)试试,看看哪些浏览器能正确解析它。另外,尝试类似于
的方法来查看哪些浏览器正确地解析了这些内容。@voyager我并不是说所有浏览器都正确地解析了有效的HTML,只是指出DOKs语句的一般性是不正确的。