You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用纯CSS让inline-block的#wrapper内的.table填满宽度并等列?

没问题!这种被外层元素限制住的情况确实有点头疼,但纯CSS完全能解决,我给你两个实用的方案,你可以根据自己的场景选:

方案一:利用视口宽度+calc偏移(最通用)

这个方案不需要修改#wrapper的定位属性,直接针对表格做调整就能让它填满整个屏幕:

.table {
  /* 让表格占满整个视口宽度 */
  width: 100vw;
  /* 关键:向左偏移,让表格中心和视口中心对齐,抵消#wrapper的inline-block留白 */
  margin-left: calc(-50vw + 50%);
  /* 强制表格按设置的宽度布局,确保单元格均分 */
  table-layout: fixed;
  border-collapse: collapse;
}

.table td {
  /* 两个单元格各占一半宽度 */
  width: 50%;
  text-align: center;
  padding: 10px;
  border: 1px solid #ddd;
}

如果页面出现横向滚动条,只需要给body加一句overflow-x: hidden就能解决。

方案二:绝对定位(适合#wrapper无定位的场景)

如果#wrapper原本没有设置position属性,我们可以通过CSS给它加上相对定位,再让表格绝对定位来撑满屏幕:

/* 给#wrapper设置相对定位,作为表格绝对定位的参考 */
#wrapper {
  position: relative;
}

.table {
  /* 绝对定位让表格突破#wrapper的宽度限制 */
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.table td {
  width: 50%;
  text-align: center;
  padding: 10px;
  border: 1px solid #ddd;
}

⚠️ 注意:这个方案会让表格脱离文档流,可能导致#wrapper高度塌陷,你可以给#wrapper设置min-height(值等于表格的高度)来避免这个问题。

这两个方案都不需要修改HTML结构,也不用JS,完全符合你的要求~

内容的提问来源于stack exchange,提问作者Neigyl R. Noval

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:55:42