我正在动态添加标签,并希望将该标签放在单元格的右下角。
我使用的代码是:
Panel pnlAddBundle = new Panel();
pnlAddBundle.Controls.Add(new Label("<div style="position:absolute;bottom:0px;right:0px;">" + ("Build " + gate.a) + "</div>"));
tc.Controls.Add(pnlAddBundle );
任何人都可以帮我吗?我收到错误,在底部没有添加 我应该做些什么改变?
我不想为此制作CSS。因为它被其他css覆盖。
答案 0 :(得分:0)
标签不能用于定位。要完成您正在寻找的内容,您需要将该标签放在div中并对其应用绝对定位。这是一个例子:
<div style="position:relative;">
<div style="position:absolute;bottom:0px;right:0px;">
<asp:Label ID="Label1" runat="server" />
</div>
</div>
这是一个证明:http://jsfiddle.net/k521h7r4/
的jsFiddle如果您需要在代码中动态执行此操作,可以将其中一个外部div设置为Panel,并将Label控件添加到其中。
<style type="text/css">
div.outer-div {
position:relative;
height:200px;
border:1px solid #000;
margin:5px;
}
div.inner-div {
position:absolute;
bottom:0px;
right:0px;
}
</style>
<div class="outer-div">
<asp:Panel ID="Panel1" runat="server" CssClass="inner-div">
<!-- render labels inside of here -->
</asp:Panel>
</div>
在代码隐藏中:
Label lbl = new Label();
lbl.Text = "Hello World!";
Panel1.Controls.Add(lbl);
修改强>
如果要动态呈现HTML,可以考虑的另一个选项是使用文字控件而不是标签。这是一个丑陋的方法,但看起来它可以根据你上面的例子工作。