我的布局类似于:
<div>
<table>
</table>
</div>
我希望div只扩展到表的宽度。
我的布局类似于:
<div>
<table>
</table>
</div>
我希望div只扩展到表的宽度。
当前回答
我尝试了div.classname{display:table cell;},结果成功了!
其他回答
解决方案是将div设置为display:inline块。
有两种更好的解决方案
显示:内联块;或显示:表格;
其中有两个显示:表;更好,因为显示:内联块;增加额外的边距。
用于显示:内联块;可以使用负边距方法来修复多余的空间
仅仅
<div style="display: inline;">
<table>
</table>
</div>
个人而言,我只是这样做:
HTML代码:
<div>
<table>
</table>
</div>
CSS代码:
div {
display: inline;
}
如果在div上应用浮点数,它也会起作用,但显然,您需要在下一个HTML元素中应用“清除两者”的CSS规则。
您可以使用内联块作为@user473598,但要注意较旧的浏览器。。
/* Your're working with */
display: inline-block;
/* For IE 7 */
zoom: 1;
*display: inline;
/* For Mozilla Firefox < 3.0 */
display:-moz-inline-stack;
Mozilla根本不支持内联块,但他们有-moz内联堆栈,这几乎是一样的
内联块显示属性周围的一些跨浏览器:https://css-tricks.com/snippets/css/cross-browser-inline-block/
您可以在以下位置看到一些具有此属性的测试:https://robertnyman.com/2010/02/24/css-display-inline-block-why-it-rocks-and-why-it-sucks/