如何自动设置不同屏幕分辨率的网页对齐方式?

时间:2011-10-22 05:01:17

标签: asp.net screen-resolution

我正在制作一个关于ASP.NET的项目,我的解决方案是1280x800。我正在使用网页1245px的宽度,该网页在我的系统上运行得非常好但是当我在分辨率1024x768上使用该网站时,对齐就会超出浏览器。我正在使用<div>宽度1245px,它在1280x800的分辨率上看起来很不错。
我尝试了这段代码,但它给了我错误。

protected void Page_Load(object sender, EventArgs e)
    {
        div1.Style.Add(HtmlTextWriterStyle.Width, System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width.ToString());
    }

给出错误

  

命名空间中不存在类型或命名空间名称“Windows”   '系统'(你错过了程序集引用吗?)`

有没有简单的方法来解决它。

1 个答案:

答案 0 :(得分:0)

屏幕分辨率的问题在于,除非您尝试拍摄圣杯并使用液体布局(a **中的疼痛),否则您实际上无法真实地支持不同的屏幕分辨率。我想你可以使用很多花哨的javascript但是... OUCH ...和维护噩梦..加上它会让你的页面陷入困境。

您应该将您的网站设置为仅在1024 x 768的假定窗口中显示内容,因为这是迄今为止最常见的屏幕尺寸。

实现此目的的一般方法是使用自动边距将一个1024x768的div居中,这样剩下的就是额外的空白区域。

<div id="MainContainer">
My content here
</div>

  #MainContainer
  {
      width: 1024px;
      height: 768px;
      margin: auto;
  }

这不会解决垂直居中的问题。我更喜欢的一种方法是使用绝对定位,这样定心就不是一个因素。我可以通过使用此css来设置要拉伸以适合窗口大小的页面:

  #MainContainer
  {
      position: absolute;
      top: 0;
      bottom: 0;

      width: 1024px;
      height: 768px;
      margin: auto;
  }

这将导致div从窗口顶部延伸到底部。 我喜欢这个解决方案,因为它支持大多数浏览器及其各种版本,甚至可以很好地处理缩放。