【问题标题】:How do I center text in an ASP.Net Hyperlink?如何在 ASP.Net 超链接中居中文本?
【发布时间】:2012-07-18 17:45:40
【问题描述】:

我有一个设置高度的 ASP.Net Hyperlink。文本呈现在它的左上角。如何垂直居中(-文本)?

(在 C# 中,我有:label1.TextAlign = ContentAlignment.MiddleCenter;。它在 ASP.Net 中是如何完成的?)

尝试了以下方法,但它不起作用(无论是在 FF 还是在 IE 上)。

<form id="form1" runat="server">
<div>
<asp:HyperLink NavigateUrl="~/WebForm1.aspx" runat="server" CssClass="MyClass" BackColor="White" 
Height="100px" Text="MyText"  Width="200px" ></asp:HyperLink>
</div>
</form>

还有:

.MyClass
{
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

【问题讨论】:

  • 我不确定我是否理解您可以尝试应用样式属性,例如:&lt;asp:HyperLink ... style="text-align:center;" /&gt;

标签: asp.net


【解决方案1】:

将以下样式添加到您的HyperLink

display:table-cell;
text-align:center;
vertical-align:middle;

如果要重用该样式,最好定义一个类:

<asp:HyperLink ... class="myClass" >HyperLink</asp:HyperLink>

然后在你的样式表中:

.myClass{
    display:table-cell;
    text-align:center;
    vertical-align:middle;
}

或者内联添加样式:

<asp:HyperLink ... style="display:table-cell;text-align:center;vertical-align:middle;" >HyperLink</asp:HyperLink>

【讨论】:

  • 谢谢。但它只是水平居中。
  • 出于某种原因,asp.net 在运行时向超链接添加了内联样式:style="display:inline-block"。解决方法:自己添加样式内联:style="display:table-cell"
  • 谢谢。现在工作。 (我什至不知道我可以在 ASP.Net 中添加内联 style。Intellisense 没有提供它。)
【解决方案2】:

为 CssClass 或内联样式添加以下属性:

{
 display: table-cell;
 vertical-align: middle;

 line-height: 32px;
}

请注意,将“32px”替换为您的超链接高度。

【讨论】:

    猜你喜欢
    • 2016-04-09
    • 2021-05-28
    • 2018-06-30
    • 2019-08-12
    • 1970-01-01
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多