为什么CSS属性overflow:scroll;不能在中正常运行<td>,而overflow:hidden;效果很好?
overflow:scroll;
<td>
overflow:hidden;
<table border="1" style="table-layout:fixed; width:100px"> <tr> <td style="overflow:scroll; width:50px;">10000000000000000000000000000000000</td> <td>200</td> <td>300</td> </tr> </table>
从CSS规范1,2,我不明白为什么。
我从这里得到了东西!
安德鲁·费多纽克(Andrew Fedoniouk)写道: 这实际上是我的问题:“一个技术原因是溢出属性不适用于表。” -为什么?这是什么原因 我不是专家,但是我相信这只是为了与旧表行为向后兼容。您可以在规范中检查“自动”表布局算法。我很确定该布局算法与溢出属性不兼容(或更准确地说,该布局算法将永远不会导致需要除“可见”之外的任何溢出值)。 是的,这就是为什么我要问。似乎没有正式的理由说明为什么不应该滚动,但是UA供应商似乎在这方面达成了一些沉默的协议。问题也是。 规范在元素方面与您同意。表单元应该尊重溢出,尽管至少Mozilla似乎不这样做。在这种情况下,我无法回答您的问题,尽管我仍然认为答案仍然与旧版渲染有关。
安德鲁·费多纽克(Andrew Fedoniouk)写道:
这实际上是我的问题:“一个技术原因是溢出属性不适用于表。” -为什么?这是什么原因
我不是专家,但是我相信这只是为了与旧表行为向后兼容。您可以在规范中检查“自动”表布局算法。我很确定该布局算法与溢出属性不兼容(或更准确地说,该布局算法将永远不会导致需要除“可见”之外的任何溢出值)。
是的,这就是为什么我要问。似乎没有正式的理由说明为什么不应该滚动,但是UA供应商似乎在这方面达成了一些沉默的协议。问题也是。
规范在元素方面与您同意。表单元应该尊重溢出,尽管至少Mozilla似乎不这样做。在这种情况下,我无法回答您的问题,尽管我仍然认为答案仍然与旧版渲染有关。