css - 为什么 <body> 不扩展以适应其内容?

标签 css

我有一个超出屏幕边缘的表格,但主体的宽度仅与屏幕一样宽,导致表格溢出。

演示:http://jsfiddle.net/6REkj/

<html>
    <head>
        <style>
            table { background-color: lime; }
            body { border: 2px solid blue; }
        </style>
    </head>
    <body>
        <table>
            <tr><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td></tr>
        </table>
    </body>
</html>

这是让我觉得 CSS 已损坏的原因之一。我认为包含的元素应该扩展以适应它们的内容。

问题 1:为什么要这样做?

问题 2:如何使表格和页面右边缘之间留有边距?

最佳答案

如果您将 display:table; 设置为 bodyhtml,它将允许在 100% 的视口(viewport)上增加其宽度。它会像 table 一样展开 :)

html {display:table;width:100%; /* need to set a width to 100%, wich means here a min-width since it is displayed with the same specifities thas has a table , it shrinks and expand according to its content */}

http://jsfiddle.net/6REkj/1/

其他选项:


Edit nowdays, min-width:max-content would do . http://jsfiddle.net/bj4wk6m2/

关于css - 为什么 <body> 不扩展以适应其内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21389073/

相关文章:

html - 验证网页

css - 我可以使用显示器 :inline with text-align: right?

html - 下拉错误最后一个按钮

css - 询问侧边栏

html - 如何在 Twitter Bootstrap 中以表单形式创建图像按钮?

css: 许多兄弟选择器在同一行

python - 如何获得 Python Selenium 中的最后一个类

html - 使用Bootstrap的显示属性d-none d-md-block和d-flex的冲突

iphone - 一个索引页,用 <div> 标签分隔页面

javascript - 为什么我的自定义 jQuery html 标记添加了不存在的断点?