在尝试使我的ASP.Net 4.0站点验证HTML5时,我能够使用当前规范。我有一个DataList总是添加cellspacing =“0”我尝试了不同的方法来删除cellspacing =“0”。我添加了一个可以流过的CSS样式表。
任何人都知道如何使DataList符合HTML 5验证吗?
实际代码:
验证错误消息:表元素上的cellspacing属性已过时。改用CSS。
生成的代码:
答案 0 :(得分:0)
我不是DataList
的忠实粉丝 - 很多时候,标记生成是基于表格的,因此在语义上不正确。因此,如果可能的话,我建议使用一些备用控件,如Repeater或ListView。
现在,如果您遇到大量数据列表......其中一个解决方案是让您自己的自定义DataList
控件明确覆盖cellspacing属性,例如
public class MyDataList : DataList
{
protected override Style CreateControlStyle()
{
var s = new TableStyle();
s.CellSpacing = -1;
return s;
}
}
然后,您可以使用ASP.NET Tag Mapping将内置数据列表替换为配置中所有页面的实现。