ie8 认为所有的表格单元格都具有 colFont 属性。因此如果需要单独针对具有 colFont 属性的单元格设置样式,就有点棘手了。
td[colFont],th[colFont] {/* 注意:不管单元格是否有 colFont 属性,在 ie8 中该样式一律是生效的even if they don't have a colFont */background: red;}
你期望的结果可能是酱紫的:
但往往在 ie8 下,样式被应用到了所有单元格:
这个 BUG 仅限于 ie8 浏览器,ie7 和 IE9 都没有这个问题。ie6 本身并不支持属性选择器,就不说了。不但如此,ie8 还认为这个莫须有的 colFont 值为 1,因此以下选择器均无效。
th[colFont],th[colFont="1"],th[colFont*="1"],th[colFont^="1"],th[colFont$="1"],td[colFont],td[colFont="1"],td[colFont*="1"],td[colFont^="1"],td[colFont$="1"] {/* ie8 中所有可能出现问题的情况 */}
解决方案:
如果你确实需要使得该选择器能在 ie8 下正常工作,可以使用给 colFont 属性赋值的方法实现,但必须保证属性值不为 1,看起来有点糟糕,但的确是奏效的。
th[colFont*="0"],th[colFont*="2"],th[colFont*="3"],th[colFont*="4"],th[colFont*="5"],th[colFont*="6"],th[colFont*="7"],th[colFont*="8"],th[colFont*="9"],th[colFont*="11"] {/* styles */}td[colFont*="0"],td[colFont*="2"],td[colFont*="3"],td[colFont*="4"],td[colFont*="5"],td[colFont*="6"],td[colFont*="7"],td[colFont*="8"],td[colFont*="9"],td[colFont*="11"] {/* styles */}
英文原稿:IE 8 Thinks All table Cells Have a Colspan | css-Tricks
翻译整理:ie8 中关于 colspan 属性的 BUG | 芒果小站
以上是内存溢出为你收集整理的IE8 中关于 colspan 属性的 bug全部内容,希望文章能够帮你解决IE8 中关于 colspan 属性的 bug所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)