Html 宽度未知的表溢出

Html 宽度未知的表溢出,html,css,cross-browser,Html,Css,Cross Browser,我对此代码有问题: CSS: HTML 此处的工作示例: 在除Opera之外的所有浏览器中,它都会稍微收缩表格,将滚动条附加到内部,因此表格中的行会中断。在带有填充的表周围添加另一个包装器并不能解决问题。但是,如果我将“overflow-y:auto”更改为“overflow-y:scroll”,它在除IE之外的所有浏览器中都可以正常工作。如果我将另一个带有“overflow-y:scroll”的表添加到此页面,同样的修复方法也可以工作 我希望它能像现在在歌剧中一样表现。这意味着桌子不会缩水。换

我对此代码有问题:

CSS:

HTML

此处的工作示例:

在除Opera之外的所有浏览器中,它都会稍微收缩表格,将滚动条附加到内部,因此表格中的行会中断。在带有填充的表周围添加另一个包装器并不能解决问题。但是,如果我将“overflow-y:auto”更改为“overflow-y:scroll”,它在除IE之外的所有浏览器中都可以正常工作。如果我将另一个带有“overflow-y:scroll”的表添加到此页面,同样的修复方法也可以工作

我希望它能像现在在歌剧中一样表现。这意味着桌子不会缩水。换句话说,我需要表格以与溢出div不存在时相同的方式显示。

您可以添加

.myTable{
white-space: nowrap;
}
.myTable{
white-space: nowrap;
margin-right: 17px;/* or more */
}
但随后会出现一个水平滚动条

然后,您可以添加

.myTable{
white-space: nowrap;
}
.myTable{
white-space: nowrap;
margin-right: 17px;/* or more */
}
它可以在Firefox上运行,但也许有一款浏览器的滚动条是30px…

你可以替换

.scroll {
    height: 150px;
    overflow-y: auto;
}

但问题是,如果桌子的高度可以小于150px,那么即使没有必要,也会有一个滚动条

编辑:

对不起,你已经知道了

但我会选择这个在兼容浏览器上工作的解决方案


对于使用IE的用户,您可以尝试一种javascript解决方案:

您正在解释问题所在,但不是您想要的。好的,我在结尾添加了一句话:您是否愿意在解决方案中使用javascript?最好不要。事实上,我已经用javascript解决了这个问题,但对我来说,它似乎有问题,如果有更好的方法,我想避免它,但这并不能解决问题的原因。基本上,我需要表以相同的方式显示,就像溢出div不存在一样。这是因为我甚至不知道这个表将有多少列,有时换行也会很好。我会在原质询中说明这点。
.scroll {
    height: 150px;
    overflow-y: scroll;
}