如何更改转置表以使其水平滚动?

2024-02-27

我正在制作一个产品比较表。它是一个具有垂直行的表格,左侧有一个标题,表格主体内的垂直行中有两个或多个产品描述。如果用户选择很多产品,它应该是水平滚动的。

我使用过CSS这个答案 https://stackoverflow.com/a/16919439/1429387转置表格(即制作垂直行)。现在我无法在其中添加水平滚动条tbody如果表格超出预定义的宽度。我正在寻找类似的东西这个问题 https://stackoverflow.com/q/17067294/1429387但适用于我的转置表。

这是我现在所拥有的:JSFiddle http://jsfiddle.net/naXa/cy21bLLp/1/当我将表格宽度限制为 200px 时,会发生以下情况:


尝试以下组合inline-blocks and nowrap:

table { border-collapse: collapse; white-space: nowrap; }
tr { display: block; float: left; }
th, td { display: block; border: 1px solid black; }
tbody, thead { display: inline-block; }

tbody {
  width: 300px;
  overflow-y: hidden;
  overflow-x: auto;
}
<table>
<thead>
  <tr>
      <th>name</th>
      <th>number</th>
  </tr>
</thead>
<tbody>
  <tr>
      <td>James Bond</td>
      <td>007</td>
  </tr>
  <tr>
      <td>Lucipher</td>
      <td>666</td>
  </tr>
  <tr>
      <td>Jon Snow</td>
      <td>998</td>
  </tr>
</tbody>
</table>
  1. table如果您的其他布局不需要,则不应显示为块
  2. 我已经添加white-space: nowrap防止换行
  3. 我已经显示了tbody and thead as inline-block所以现在您可以像内联元素一样管理它们。

如果您想滚动tbody只有没有thead,它可能看起来像这样:

table { border-collapse: collapse; white-space: nowrap; }
tr { display: inline-block; }
th, td { display: block; border: 1px solid black; }
tbody, thead { display: inline-block; vertical-align: top; }

tbody {
  width: 150px;
  overflow-y: hidden;
  overflow-x: auto;
  white-space: nowrap;
}
tbody tr { margin-right: -5px;}
<table>
<thead>
  <tr>
      <th>name</th>
      <th>number</th>
  </tr>
</thead>
<tbody>
  <tr>
      <td>James Bond</td>
      <td>007</td>
  </tr>
  <tr>
      <td>Lucipher</td>
      <td>666</td>
  </tr>
  <tr>
      <td>Jon Snow</td>
      <td>998</td>
  </tr>
</tbody>
</table>

您可以考虑块布局。事实上你已经实现了它,除了 HTML,这是一个糟糕的模式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何更改转置表以使其水平滚动? 的相关文章

  • 无法更改 SVG 元素的类名

    我想通过单击按钮来更改应用于 SVG 的类 代码是here http jsfiddle net p19rnmev 我的 SVG 看起来像
  • Overflow:auto 导致子 DIV 的绝对元素消失

    我有一个 div A 我在其中设置了overflow auto 现在在该 div 内 我有两个 div 父 div B 设置为position relative和子 div C 是position absolute 现在的问题是 设置ove
  • 是否可以通过 CSS 3 使用文本内容设置元素中文本的颜色?

    好吧 这更像是一个有很多非 CSS 解决方案的问题 但我希望更多地从理论角度来做这件事 我有一个它的应用程序 但不值得以任何其他方式对其进行编码 有趣的 问题 如何使用元素的文本为元素的文本着色 我有一个元素 全部都是它自己的 它将包含颜色
  • 菜单作为水平无序列表或表格?

    我有一个无序列表 水平显示为页面的顶部菜单栏 我已经让它显示得相对较好 尽管我一直在调整 IE6 和 IE7 的间距 因为它无法正常显示 令人震惊 无论哪种情况 使用表格来显示菜单还是使用一些CSS hack 我找不到解决方法 会更好吗 显
  • 滚动时我的身体背景颜色消失

    我希望有人能帮帮忙 我已将 body height 属性设置为 100 当所有内容同时显示在屏幕上时 这很好 然而 当我需要滚动 最小化窗口时 主体颜色消失 只留下我为 HTML 背景设置的颜色 有人知道解决办法吗 html backgro
  • 在服务器端生成 HTML Canvas 图像数据?

    这个问题的标题可能有点误导 但我不确定最好的标题是什么 因为我还无法猜测解决方案 基本上我正在开发的系统很大程度上依赖于画布图 这些图表是通过 javascript 生成的 并使用通过 ajax 从 API 服务器提取的数据制作 棘手的部分
  • UL 标签内的标签 H3 [重复]

    这个问题在这里已经有答案了 可能的重复 UL 中是否允许除 LI 之外的任何内容 https stackoverflow com questions 6056142 is anything except lis allowed in a u
  • 为整个网站设置单个图标

    目前我正在使用这段代码将网站图标添加到网站 但是 必须将此代码添加到每个 HTML 页面中 有谁知道如何设置全局图标 我看过的所有地方都告诉我必须将其添加到每个页面 UPDATE Chrome 在根目录中搜索 favicon ico 文件
  • CSS Overflow 属性在 iPad 中不起作用

    我正在为 iPad 设计一些 html 页面 在尝试像 yscroll auto 这样的 css 溢出属性时 iPad 中没有出现滚动条 内容也没有滚动 我在 ipad 模拟器和设备中尝试过 有没有其他方法可以实现这个属性 请帮帮我 提前致
  • SASS如何在旋转body时使页面完整的高度和宽度?

    我必须旋转我的身体并做到这一点全高 and 全屏宽度 嗯 我用的是vh公制并且非常适合width但身高还是不太合适 我不得不旋转 90 度但是height and width仍然指相同的方向not rotate PS 我添加了 red以便更
  • iframe 重新加载按钮

    我浏览了很多网站 但似乎没有一个能正常工作 或者我不明白它们 我想要一个刷新某个 iframe 的简单按钮 该按钮将位于父页面上 并且 iframe 名称为 Right 有很多方法可以做到这一点 假设这个iframe markup 我们可以
  • 角度 2 中的动态 styleUrls?

    是否可以将样式表的 url 动态注入到组件中 就像是 styleUrls stylesheet1 css this additionalUrls 或者 一厢情愿并注意这只是假代码 export class MyComponent imple
  • 更改离子搜索栏的占位符和清晰图标颜色不是全局的吗?

    我有两个离子搜索栏 我只需要更改其中之一的占位符和清除图标颜色
  • 一旦 webapp 添加到主屏幕,是否可以强制 iphone/ipod 更新 apple-touch-icon?

    我使用 safari 的所有推荐链接和元标记创建了一个网络应用程序 例如
  • 如何在 Bootstrap 3 中指定行高?

    使用 Bootstrap 3 我将 row 类的高度设置为 3 5em 我在行中有几个输入 它们与行的顶部对齐 我想让它们底部对齐 我尝试过垂直对齐 底部的样式 但这似乎不起作用 我想让东西底部对齐的原因是我有一个浮动标签 我在输入字段上方
  • gwt 中的垂直居中

    如何使用垂直面板在 gwt 中垂直居中 或者请告诉我有什么方法可以进行垂直居中 如果你想直接使用VerticalPanel从代码中 您需要使用setVerticalAlignment HasVerticalAlignment ALIGN M
  • MYSQL 按喜欢/不喜欢和受欢迎程度排序

    我有评论表 其中包括喜欢和不喜欢的内容 现在我在正确的顺序上遇到了问题 实际上 我的系统在顶部显示了最多点赞的评论 我正在 youtube 上寻找类似系统的东西 这意味着 100like 100dislikes 的评论的顺序高于 1 1 我
  • CSS - 第一个没有特定类别的孩子

    是否可以编写一个 CSS 规则来选择没有特定类的元素的第一个子元素 example div span class common class ignore span span class common class ignore span sp
  • 位置:绝对在边框半径内且溢出:隐藏

    我遇到了问题border radius在webkit浏览器中找到了解决方案 网址如下 如何在 Chrome Opera 中使 CSS3 圆角隐藏溢出 https stackoverflow com questions 5736503 how
  • span 和 iframe 正文中的宽度(以像素为单位)

    我需要知道 a 的宽度 nbsp 以像素为单位 以及是否取决于字体大小 另外 页面中不同元素的情况是否有所不同 还有 就是 nbsp 与常规不同 目的 nbsp 不间断空格 位于正常空格之上是为了防止单词之间出现换行 您可以使用多个 nbs

随机推荐