如何不将面板控件呈现为 <div>

Posted

技术标签:

【中文标题】如何不将面板控件呈现为 <div>【英文标题】:How to not render a Panel Control as a <div> 【发布时间】:2011-11-20 07:21:18 【问题描述】:

我使用 Asp.net 4 和 C#。

我有一个通用的 Web 控件&lt;asp:Panel&gt;。我的理解是,如果面板可见,它会在浏览器中呈现为&lt;div&gt;&lt;/div&gt; 标记。

我想知道是否可以在不渲染其&lt;div&gt; 的情况下更改此行为并显示面板的内容。

知道怎么做吗? 我可以使用其他控件代替 Panel 吗?

感谢提供代码示例!

【问题讨论】:

【参考方案1】:

简单:

use PlaceHolder or  Literal

它只渲染它所拥有的——不多不少。

【讨论】:

完美我会接受您解决我问题的答案。再次感谢。 请注意,我更改为 PlaceHolder 而不是 contentPlaceHolder(错误地)。【参考方案2】:

如果您使用 ASP.NET PlaceHolder 控件,那么您将无法获得 div 标签。

当然,如果你使用PlaceHolder,你将不会得到一个html元素(即DIV标签),所以你不能在控件上设置BackImageUrl或Wrap等属性。

【讨论】:

以上是关于如何不将面板控件呈现为 <div>的主要内容,如果未能解决你的问题,请参考以下文章

Panel控件和Div的区别

WPF基础之WrapPanel面板和DockPanel面板

dat.gui如何在一行添加两个控件

CSS如何让div相对body居中 而其中的控件不受影响。

将 div 扩展到 iFrame 的边界之外?

用户控件中的内容