一、 自然拉伸
如果你的网站结构没有用到大量的图形来衔接,主要由表格来定结构,那么你就可以使用该方法。非常适用于主要由表格、文字来表达信息的简单的网页页面。制作表格时,只要你把表格的宽度属性定义为100% ,表格就会根据分辨率的不同自行调整宽度。
二、 固定居中
在800×600分辨率下制作的网页在1024×768分辨率的机器上打开,整个网页就会跑到左边;1024×768分辨率的网页在800×600分辨率的机器上有时也会变得"不堪入目"。两种分辨率各做一个吧?做起来费劲。所以目前普遍采用的方法是固定居中法!
现在大多数网民都还在用800600的分辨率,所以我们一般可以以此分辨率为主。只要在网页原代码的<body>后紧加一句<center>,</body>前加一句</center>就OK了。不过有几个问题这是要注意一下,第一个要注意的是上面说到的百分比的问题,表格、单元格的宽度单位最好要使用像素单位,而不要用百分比。例如width=770。如果你的表格宽度设的是百分比,那么使用大于800×600的像素时,网页就会拉宽,这样网页可能会变形。在<body>中加入leftmargin=0,即<body leftmargin=0>这种情况下,800×600支持的表格宽度为780像素时不会出现滚动条。还有一点要注意的是不能用DW中的层来定位。
三、 兵分两路
如果你的网页不经常更新,而且对页面效果极其在意,那好,你就设计两个页面,分别对应800×600和1024×768两种分辨率。然后根据不同的分辨率进行跳转就行了。
我以前也遇到过类似的问题,但后来发现这个期望本来就是有问题的,
如果想要表格完全自适应到完美状态,必须里面内容都是长度合理的,如果内容本身不可能让表格达到那种效果,程序自然无法处理
你循环的
<tr> <td style="word-break:break-all"><%=listget(0) %></td> <td style="word-break:break-all"><%=listget(1) %></td> <td style="word-break:break-all"><%=listget(2) %></td> <td style="word-break:break-all"><%=listget(3) %></td> <td style="word-break:break-all"><%=listget(4) %></td> </tr>这些td里,没有加宽度。
另外如果你循环出来的内容有是连串的字母数字的话,也不会折行的,因为不知道应该从那里断开。
为什么不用滚动条呢?
客户的excel如果宽度不是固定的话,那我们就从action里处理完数据,jsp页面用el表达式读,和上面一样的,页面让美工做的时候,按照客户最多列的情况,再多做上几列,所有列都有一个判断,如果里面数据为null或为空时,不显示该列,这样不知可否能打到你的要求。
第一行比如10列,全满了,第二行也是10列,里面填了8列数据,第9列判断,里面的数据为null,不显示;第10列判断后也不显示。一共显示18列数据。
又比如:第一行10列,填写了8列数据,第一行的后2列判断后不显示,第二行的10列,数据全为null,判断后亦不显示,页面展示效果,8列数据。
就是这个意思,我个人觉得是唯一高效的解决方案。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)