编辑-原标题:是否有其他方式来实现border-collapse:collapse的CSS(为了有倒塌,圆角表)?
因为事实证明只是让表格的边框崩溃并不能解决根本问题,所以我更新了标题以更好地反映讨论.
我正在尝试使用该CSS3 border-radius属性制作带圆角的桌子.我正在使用的表格样式如下所示:
table {
-moz-border-radius:10px;
-webkit-border-radius:10px;
border-radius:10px
}
Run Code Online (Sandbox Code Playgroud)
这是问题所在.我也想设置border-collapse:collapse属性,当设置border-radius不再有效时.是否有基于CSS的方式我可以获得与border-collapse:collapse没有实际使用它相同的效果?
编辑:
我做了一个简单的页面来演示这里的问题(仅限Firefox/Safari).
似乎问题的很大一部分是将表设置为圆角不会影响角td元素的角落.如果表格都是一种颜色,这不会是一个问题,因为我可以td分别为第一行和最后一行制作圆角和倒角.但是,我使用不同的背景颜色来区分标题和条纹,因此内部td元素也会显示其圆角.
建议的解决方案摘要:
桌子周围有另一个圆角的元素不起作用,因为桌子的方角"渗透".
将边框宽度指定为0不会折叠表.
底部td四角设置CELLSPACING零后仍然广场.
使用JavaScript代替 - 避免问题.
可能的解决方案:
这些表是用PHP生成的,所以我可以为每个外部的t/tds应用一个不同的类,并分别为每个角设置样式.我宁愿不这样做,因为它不是很优雅,并且应用于多个表格有点痛苦,所以请保持建议.
可能的解决方案2是使用JavaScript(特别是jQuery)来设置角落的样式.这个解决方案也有效,但仍然不是我想要的(我知道我很挑剔).我有两个保留意见:
我知道今天尝试用CSS3做这件事似乎是不必要的,但我有我的理由.我还想指出,这个问题是w3c规范的结果,而不是CSS3支持不好,所以当CSS3得到更广泛的支持时,任何解决方案仍然具有相关性和实用性.
我正在尝试在 CSS 中设置一个边框半径为 12px 的表格。表格中的 tr 或 td 没有边框,只有一个边框围绕整个地块。我希望表格中的第一行在顶部 2 个角上有一个边框半径,但在底部 2 个角上没有(所以它就像表格的标题)我设法做到了。但是,这在表格和第一行之间创建了一个白色边框 - 我希望它们在没有白色边框的情况下彼此相邻,因为标题行具有彩色背景。
我曾尝试使用边框折叠来执行此操作,但这会抵消整个表格上的边框半径,使标题行在顶部 2 个角上变圆,但位于方形表格内。
这很难解释,因此可以在此处找到示例。您可以看到表格和蓝色背景行之间的白色边框。
有没有人知道如何在没有边界崩溃的情况下摆脱边界?提前致谢