- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个包含 5 列的表格,其中 2 列具有固定宽度,其他 3 列没有。不同的浏览器对此解释不一致。
看看this fiddle在不同的浏览器中查看我的意思。
Firefox 和 IE9 以我认为正确的方式呈现它:所有单元格的宽度统一为 20%(两个单元格的宽度设置为 20%,其余 60% 分配给其余三个单元格)。
Chrome、Opera、IE7 和 IE8 强制没有设置宽度的空单元格的宽度为零,这反过来又迫使其他两个单元格各自拉伸(stretch)到 50% 的宽度。将内容放入三个空单元格之一会使它们占据所有可用宽度(如果一个单元格有内容,则为 60%,如果有两个,则为 30%,等等)。同样,从具有设置宽度的两个单元格之一中删除内容会导致宽度强制为 0。
哪些浏览器做对了,哪些浏览器做错了?
此外,我仔细阅读了有关表的 W3C 规范,但只找到了 description of the empty-cells
property ,它应该控制带有边框/背景的空单元格的渲染,但这不会影响单元格的宽度。我以为 table-layout
property可能会成功,但是在 Chrome 中设置 table-layout:fixed
确实会显示所有列,但无法(或者至少我没有看到)在 Firefox 中做相反的事情.如果您能对此进行详细说明和/或指出涵盖此内容的 W3C 规范的正确部分,我将不胜感激。
最佳答案
问题的出现是因为 W3C 似乎还没有涵盖它,他们没有提出任何“正确”的方法来处理这种情况。浏览器可以自由地以他们希望的方式解释它,在我看来,IE9 和 Firefox 就是这样做的。
关于html - 空单元格的宽度固定为 0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9669452/
我是一名优秀的程序员,十分优秀!