Asp.net IE扭曲(在asp:listview中不会呈现空单元格)

Asp.net IE扭曲(在asp:listview中不会呈现空单元格),asp.net,internet-explorer,iis,listview,Asp.net,Internet Explorer,Iis,Listview,我有一个使用css类的asp:listview。在我的开发系统VS2008上,它在Chrome、IE和FireFox中正确呈现。在我们的生产服务器IIS 2.0上,IE不会将样式应用于空单元格,但包含文本/任何内容的单元格都可以。Chrome和FireFox仍然可以很好地渲染。我想要的样式是每行底部有一条细线,有点像行分隔符。你知道我能做些什么吗 下面是我分配给Item和AltItem模板的css .itemtemplate { background-color: White; } .i

我有一个使用css类的asp:listview。在我的开发系统VS2008上,它在Chrome、IE和FireFox中正确呈现。在我们的生产服务器IIS 2.0上,IE不会将样式应用于空单元格,但包含文本/任何内容的单元格都可以。Chrome和FireFox仍然可以很好地渲染。我想要的样式是每行底部有一条细线,有点像行分隔符。你知道我能做些什么吗

下面是我分配给Item和AltItem模板的css

.itemtemplate
{
    background-color: White;
}
.itemtemplate TD
{
  border-bottom:solid 1px #eae9e1; 
  border-right:solid 1px #eae9e1;
}
哦,还有一件事。如果我将css中的背景颜色更改为橙色,则空单元格将以边框呈现。

放入空单元格


如果我没记错的话,根据HTML规范,单元格不应该是空的,所以你真的应该在单元格中始终有一些内容。

在IE中,单元格必须有某种类型的内容才能正确显示。尝试以编程方式添加实体以创建空内容

编辑: 要确保将其转换为html,您可能需要通过一个方法运行Eval并返回该方法的结果:

...Text='<%# GetItemText(Eval("EmployeeNumber").ToString()) %>'

当您部署到真正的服务器上时,您是否尝试确定CSS文件是否真正进入浏览器?它在其他浏览器中工作吗?这不太可能是服务器问题,除非服务器根本不提供CSS,由于标记中的路径断开或其他原因。更改itemtemplate的text属性(如下所示)后,我仍然存在相同的问题:text=''更改itemtemplate的text属性(如下所示)后,我仍然存在相同的问题:text='@Curtis-您是否验证了ListItem的输出以确保将其转换为html?Joel不,似乎不在html中。知道怎么加吗?乔尔-谢谢。通过这样的函数运行字符串是有效的。@Curtis-我最喜欢的低级肮脏技巧之一。可能不是最好的解决方案,但它简单快捷。
public string GetItemText(string empNum)
{
    return (String.IsNullOrEmpty(empNum) ? "&nbsp;" : empNum;
}