垂直对齐asp面板

时间:2012-10-05 09:44:39

标签: c# asp.net panel vertical-alignment

我在asp页面中有一个面板,我想在此面板中添加图像,以便此图像位于面板的中心:

protected void Page_Load(object sender, EventArgs e)
{
    Panel panel = new Panel();
    panel.HorizontalAlign = HorizontalAlign.Center;  
    //here I want set verticalAlign for the panel

    Image image = new Image();
    image.imageURL = imageurl;
    panel.controls.add(image);
    this.form1.controls.add(panel);
}

我尝试使用CSS:

p.CssClass = "css1";

和css是:

<style type="text/css"> 
        .css1
        {
            vertical-align: middle;              
        }
</style>

但这没有给出结果。

那么,如何在面板中心(水平和垂直)定位图像?

请不要推荐

padding-top:20px; 

这会改变面板的高度。我必须不断保持面板的尺寸。

1 个答案:

答案 0 :(得分:4)

一个面板只是渲染为div,所以这个问题的答案应该是有用的:

Align vertically using CSS 3(特别是第二个答案,@ j-man86,详细介绍了解决这个问题的两种方法)。

如果您只想让vertical-align: middle;工作,那么最简单的方法是将display: table-cell;添加到同一个css声明中,但这不一定是垂直对齐的最佳CSS解决方案。