我的开发机器有一个相当大的屏幕(19英寸)。我的一些客户有较小的屏幕(或者他们选择不最大化我的网页),因此页面上的控件摆放乱七八糟,互相重叠。有什么办法可以解决这个问题吗?
在你的CSS中为你的主体使用固定宽度。可以像这样做:
body { width: 800px; margin: 0 auto; }
这应该将页面主体宽度固定为800像素并居中。找出您的客户使用的最低分辨率,然后在此基础上删减50个像素以适应滚动条和一点空白区域,并将其用于您的宽度设置。
就我个人而言,我不会尝试在此基础上适应非最大化的情况,因为您将无法获得太多可用空间。
我的第一条建议是不要等待在不同分辨率下尝试您的页面。这应该成为您开发过程的一部分。如果您知道您的用户将拥有比您更小的浏览器窗口,请换位思考并使用小窗口进行大量测试。这就像在其他浏览器中测试一样;不要假设在IE6中一切都会看起来和工作得很好。
这个问题并不特定于ASP.NET。您的控件只是标记和样式,因此最终您需要让它们共同工作,以便在缩小规模时页面不会明显“损坏”。
选择您想要支持的最小屏幕分辨率,并制作一个草图,显示如何将事物适合可用空间。如果您对CSS不太熟悉,则固定宽度可以大大简化事情。
我已经使用了其他答案中描述的所有技术:完全流体宽度,尝试适应用户浏览器大小的固定宽度。
最近我成功地使用了一种解决方案,将两者结合起来。使用CSS和Javascript,我为页面指定了最大宽度和最小宽度。这使得页面在高分辨率下可以扩展一些,同时通过确保事物不会过于挤在一起,让我保持低分辨率下的一些秩序。
关键是要了解您的典型受众。通过分析,我们知道超过50%的用户使用800 x 600到1024 x 768之间的分辨率,因此我们尝试针对这些分辨率。混合流体布局允许我们创建适合这些分辨率的页面,同时仍然可以扩展以减少更大屏幕(更高分辨率)上的空白空间。