table设置背景图片,不能100%显示是一个让人头痛的问题,还好在网上找到了解决方法,有需要的朋友可以参考下
在开发中发现了下面的情况: (1) 如果文件存放为.jsp文件后缀的形式,代码如下所示(index.jsp):
复制代码代码如下: <%@page contentType="text/html; charset=utf-8" pageEncoding="utf-8" language="java" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>让表格百分之一百显示</title> </head></p>
<p><body style="background:#9C9;"> <table cellpadding="0" cellspacing="0" style="width:100%;" > <tr> <td height="8" width="17px;" ><img src="img/bg-header_l.gif" width="17" height="8" /></td> <td style="background:url(img/bg-header_c.gif) repeat-x;"></td> <td height="8" width="17px;" ><img src="img/bg-header_r.gif" width="17" height="8" /></td> </tr> </table> </body> </html>
程序运行后,页面中显示的效果如下图所示:
201211081645248.jpg
该效果出现了两处不对的地方: (1) 中间的td的背景并没有铺满整个td; (2) 整个table宽度并没有撑满整个屏幕。 百思不得其解,非常郁闷!!后台尝试给table加上border="0",效果仍然如上图所示。把0改为1,发现table撑满了整个屏幕,并且td也被背景铺满,如下图,不过表格的边框不是我所要的。
201211081645249.jpg
发现上述方法不能从根本上解决问题。 然后又对照了一下table中的3个td,发现第二个td中没有内容,于是尝试在第二个td中填入内容,代码如下所示:
复制代码代码如下: <table cellpadding="0" cellspacing="0" style="width:100%;" > <tr> <td height="8" width="17px;" ><img src="img/bg-header_l.gif" width="17" height="8" /></td> <td style="background:url(img/bg-header_c.gif) repeat-x;">第二个td添加内容</td> <td height="8" width="17px;" ><img src="img/bg-header_r.gif" width="17" height="8" /></td> </tr> </table>
运行代码后的效果基本符合最终的结果,运行效果如下:
2012110816452410.jpg
下面再将代码稍微调整一下即可,完整代码如下:
复制代码代码如下: <%@page contentType="text/html; charset=utf-8" pageEncoding="utf-8" language="java" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>让表格百分之一百显示</title> </head> <body style="background:#9C9;"> <table cellpadding="0" cellspacing="0" style="width:100%;" > <tr> <td height="8" width="17px;" ><img src="img/bg-header_l.gif" width="17" height="8" /></td> <td style="background:url(img/bg-header_c.gif) repeat-x; font-size:0px;"> </td> <td height="8" width="17px;" ><img src="img/bg-header_r.gif" width="17" height="8" /></td> </tr> </table> </body> </html>
最终效果如下图所示:
2012110816452411.jpg
|