1

我在 html 上有一个简单的 div,例如:

<div class="warning">
    <h3>Please make sure:</h3>
    <asp:PlaceHolder id="phWarnings" runat="server"></asp:PlaceHolder>
    <br />
    <a href="javascript:void(0)" onClick="$('#warning').hide()">Okay</a>
</div>

PlaceHolder 填充了几个单选按钮、一个覆盖 div、一些h4p元素。

但是,当页面显示时,整个 div(及其子内容)完全在警告 div 之外。我以为我弄乱了代码隐藏中的 div 结构,所以我只是注释掉了所有内容并这样做了:

phWarnings.Controls.Add(new LiteralControl("Meh"));

你猜怎么着?是的,字符串“Meh”也在警告 div 之外。HTML(查看源代码)选项显示了这一点:

<div class="warning">
    <h3>Please make sure:</h3>
    <br />
    <a href="javascript:void(0)" onClick="$('#warning').hide()">Okay</a>
</div>

Meh

其他时候我也做过类似的事情,但从未遇到过这个问题。我希望你们能阐明为什么占位符决定离开父 div 或如何避免它。从警告 div 等中删除类似乎不起作用。

知道为什么会这样吗?

4

3 回答 3

1

事情不只是发生,它们的发生是有原因的。如果它们看起来好像刚刚发生,那只是意味着你不知道原因......这就是你问的原因。所以...

问题必须与您的html或css有关。由于您没有给我们太多继续下去的机会,因此任何人都无话可说。

你可以放一个页面,并提供一个链接,供人们查看 html 和 css。没有理由你不能这样做。

在你的 CSS 中需要注意什么?例如,尚未清除的浮动。

在 Html 中需要注意的事项?未封闭的标签。

您可以通过在 Google Chrome 或 FireFox 中查看页面时右键单击违规区域并执行“检查元素”来诊断上述类型的问题?

您是否使用 jquery 或类似方法分配 css 类?可能不是,鉴于您在 a 标记中的内联 js 代码...

以上所有或它们的组合都是可能的候选者,但在没有页面可查看的情况下,您不会得到太多帮助。

于 2011-03-15T10:01:37.300 回答
0

只是在这里猜测,您是否覆盖了页面的渲染方法?如果您尝试将包含的 div 更改为 runat="server" 会发生什么?

于 2011-03-15T10:44:58.530 回答
0

我可能不正确,但我从描述中解释的是您正在将一些 HTML 从代码中附加到您的占位符中。

如果可能,您可以通过 jquery 将元素附加到您的 div 中。

$('div.warning').append("你的内容")

于 2011-03-15T09:54:08.210 回答