我用一个函数来输出一个table,结果发现输出的结果和我想要的不一样。
于是我就查看源文件,把输出的table单独写到aspx里面,发现其实输出的结果是对的。但是不知道为什么,输出就是布局错误。
输出方法是在.cs文件里面写一个函数,然后在aspx页面里面调用。比如.aspx里面调用
<%=sps("8", "25") %>.cs文件里面
    public string sps(string mid, string uid)
    {
        Shop_SP shop_sp = new Shop_SP();
        return shop_sp.sp(mid, uid);
    }
具体图看下面,上面那行是输出的,布局是错误的,下面那行是直接从源文件里面提取出来输出的结果,然后粘贴到aspx页面里面看到的。非常的头晕~~~希望大家帮忙找找什么原因。谢谢!!!!

解决方案 »

  1.   

    把生成的html代码贴出来看看吧
      

  2.   

    (1)加上换行元素</br>
    (2)实在不行,将HTML源文件贴出来,让楼上楼下的兄弟们帮忙把把脉。
      

  3.   

    图片,名称,价格各用<div>套住
      

  4.   

    如楼上所说
    1、图片后面加<br/>试试
    2、如果不行,图片用<div style="display:block">,再在后面加<br/>
    3、如果还不行,检查一下你的全局css里面是不是有div:{float:left}的标识,删掉,用以上方法再刷新一下
      

  5.   

    用表格或者DIV啊.或者仅仅用个BR也行啊.你肯定是啥都没用.直接在图片后面输出的超链接..
      

  6.   

    看你的图片像是用div+css弄滴,而且似乎是左浮动来着去掉 css 的相关class的左浮动 看看
      

  7.   

    下面贴出生成结果的HTML代码。如果把这段HTML代码直接粘贴到ASPX页面里面,看到的结果是正确的。
    但是如果在ASPX页面里面调用生成函数,及时这段代码一摸一样,但是得到的布局还是不一样。另外我测试的页面里面没有任何CSS。就是新建一个ASPX页面,然后把这个静态的HTML代码粘贴进去,
    然后在后面跟上动态生成的函数(没用DIV)    <table border='1' cellpadding='0' cellspacing='0'>
            <tr>
                <td style='height: 220px' valign='middle'>
                    <ul>
                        <li><a target='_blank' href='./functions/displaysp.aspx?id=360158'>
                            <img src='/Img/spimg/360158/200969115439539.jpg' width='100px' height='120px' alt='建国60周年纪念银条' /></a></li>
                        <li><a target='_blank' href='./functions/displaysp.aspx?id=360158'>建国60周年纪念银条</a></li>
                        <li>
                            <img src='/Img/sendimg/csqh_s.gif' alt='您下完订单我们处理后您可以根据我们提供的超市地址,选择离您最近的超市自行提取商品。' />售价:1380</li></ul>
                </td>
                <td style='height: 220px' valign='middle'>
                    <ul>
                        <li><a target='_blank' href='./functions/displaysp.aspx?id=360121'>
                            <img src='/Img/spimg/360121/20096911505354497.jpg' width='100px' height='120px' alt='《第3/4/5套人民币经典珍藏》' /></a></li>
                        <li><a target='_blank' href='./functions/displaysp.aspx?id=360121'>《第3/4/5套人民币经典珍藏》</a></li>
                        <li>
                            <img src='/Img/sendimg/csqh_s.gif' alt='您下完订单我们处理后您可以根据我们提供的超市地址,选择离您最近的超市自行提取商品。' />售价:1999</li></ul>
                </td>
                <td style='height: 220px' valign='middle'>
                    <ul>
                        <li><a target='_blank' href='./functions/displaysp.aspx?id=360150'>
                            <img src='/Img/spimg/360150/20096417352422949.jpg' width='100px' height='120px' alt='骄傲中国' /></a></li>
                        <li><a target='_blank' href='./functions/displaysp.aspx?id=360150'>骄傲中国</a></li>
                        <li>
                            <img src='/Img/sendimg/csqh_s.gif' alt='您下完订单我们处理后您可以根据我们提供的超市地址,选择离您最近的超市自行提取商品。' />售价:9600</li></ul>
                </td>
            </tr>
        </table>
      

  8.   

    注意一下上下两行的区别:
    li的典型特征(未用CSs控制的情况下):因为是无序列表 所以前面有个小圆点  也就是说有几个li那么就应该有几个小圆点;
    下面一行是三个小圆点  即三行(正常,每条记录占一个li)   再看上面   很明显只有两个(即只有两个li),  图片和后面的说明文字在同一个li里面   这样一来 自然不会换行, 
    楼上有人说在里面加<br/>  也许会有效果   但是如果加到ul里面则不符合XHTML的规范,解决办法:  注意下面生成的代码  有几个li, 检查生成无序列表的函数。
      

  9.   


    谢谢你的回答。目前的情况是新建一个ASPX页面,没用任何样式,程序直接生成的和直接取生成结果的HTML代码粘贴到
    aspx页面里面看到的样式不一样。
      

  10.   

    问题找到,原来是img的alt里面少了一个闭合的单引号。
    幸亏用IE7看了一下。
    原来IE7和IE8看到的效果不一样。谢谢大家。