应该补充一点,如果浏览器默认情况下设置了属性,则可能需要解决。在“现代”浏览器中,这似乎不是问题,但是,这是我所看到的问题,因此请务必检查跨浏览器的性能。
例如,我发现在IE 9之前的版本中,为表中的所有TD设置了colSpan,因此任何单个单元格的隐藏colspan值为1。
因此,如果您要在网络文档中定位“具有colspan属性的任何TD”,即使没有设置colspan属性的td,例如任何TD是单个单元格,也将获得css样式。IE小于9基本上将样式化所有样式!
唯一值得关注的原因是所有其余无法升级到IE8以上版本的XP用户。
因此,例如,我有一组表,其中的内容可能会从一端移到另一端,在末尾或开始处留出1到7个单元格的空白。
我想使用colspan属性在末尾将颜色应用于任何空白单元格。在IE 9或以下的版本中,使用以下命令将无效
#my td[colspan] {background-color:blue;}
...所有TD都会被设置样式(由于条件属性样式在IE中优越,所以很有趣,但我离题了...)。
当我将要包含在样式方案中的任何单独单元格/ TD的colspan值设置为“ single”时,在所有浏览器上使用以下作品,但是它是“ hack”并且无法正确验证...
#my td[colspan="single"] {background-color:blue;}
#my td[colspan="2"] {background-color:blue;}
#my td[colspan="3"] {background-color:blue;}
#my td[colspan="4"] {background-color:blue;}
#my td[colspan="5"] {background-color:blue;}
#my td[colspan="6"] {background-color:blue;}
#my td[colspan="7"] {background-color:blue;}
另外,您应该能够使用“ if lt IE 9”进行覆盖,使用条件样式更恰当地解决该问题。这将是正确的方法,只需记住您必须在此过程中隐藏IElt9中的“正确构造的CSS”,我认为这样做的唯一正确方法是使用选择性样式表。
无论如何,我们大多数人都已经这样做了,但是无论如何,您仍然可以考虑并测试浏览器在看不到自动属性时是否应用了自动属性,以及如何处理用于属性值样式设置的corect语法。
(顺便说一句,[从css3开始,colspan恰好还不在css规范中,因此此示例没有引发验证错误。)
empty