css - 来自 CSS noobie 的表格单元格固定宽度/溢出查询

标签 css

我正在尝试创建一个宽度为 50vw 且列宽固定为 100px 的表格。我还希望有一个垂直滚动,因为列的宽度超过了表格的宽度。我可以让表格滚动(通过将 display: block 添加到 .Table),但单元格宽度不再是 100px;或者我可以将单元格宽度设置为 100 像素,但表格不再滚动并延伸到屏幕的一半。我试过设计 tbody 和 rows 等,但没有成功。非常感谢任何帮助。

此 CSS 生成非滚动表格:

.Table{
    width:50vw;
    height:30%;
    background-color: rgba(255,255,255,0.5);
    overflow: scroll;
    table-layout: fixed;
}

.Cell{
    width:100px;
    height:50px;
    text-align: center;
}

我的代码如下:

import React from 'react';
import classes from './app.module.css';
const results = (props) => {

  let i = 0;
  let player1Numbers = props.points.map(x => { return <td className={classes.Cell}>{[x][0][0]}</td> });
  let player2Numbers = props.points.map(x => { return <td className={classes.Cell}>{[x][0][1]}</td> });
  let headers = props.points.map(x => { i++; return <th className={classes.Cell}>Game {i}</th> });


  console.log(player1Data);

  return (<React.Fragment>
    <table className={classes.Table}>

      <tr className={classes.Row}>
        <th className={classes.Cell}>Player</th>
        {headers}

      </tr>
      <tbody className={classes.tbody}>
        <tr className={classes.Row}>
          <td className={classes.Cell}> Player</td>
          {player1Numbers}
        </tr>
        <tr>
          <td className={classes.Cell}>Nadal</td>
          {player2Numbers}
        </tr>
      </tbody>
    </table>
    <div className={classes.Space}></div>
  </React.Fragment>);
}

export default results

谢谢!

最佳答案

要将水平滚动条添加到“固定宽度”的表格中,您需要一个包装容器。请参阅下面的示例,其中我添加了一个周围的 div。

div {
  overflow-x: scroll;
  width: 350px; /* or 50vw */
  border: 1px solid green;
}

table {
    width:100%;
    height:30%;
    background-color: rgba(255,255,255,0.5);
    table-layout: fixed;
    border: 1px solid blue;
}

td {
    width:100px;
    height:50px;
    text-align: center;
    border: 1px solid red;
}
<div>
  <table>
    <tr>
      <td>a</td>
      <td>b</td>
      <td>c</td>
      <td>d</td>
      <td>e</td>
      <td>f</td>
      <td>g</td>
      <td>h</td>
    </tr>
  </table>
</div>

关于css - 来自 CSS noobie 的表格单元格固定宽度/溢出查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57962028/

相关文章:

css - 使用 WKHTMLTOPDF 库的自定义字体在生成的 PDF 中不起作用

javascript - 如何通过单击另一个标签来更改一个标签的类和文本?

html - 使用 Bootstrap 4 将版权页脚定位到 Angular/C# 应用程序的底部

javascript - Bootstrap 工具提示显示在模态窗口后面

css - 并排对齐控件

html - 内容在横幅上和标题下滚动时出现问题

css - 位置相对重叠 float-left

javascript - 如何覆盖脚本创建的 html 属性 (mediaelement.js)

jquery - 在 jquery datepicker 中更改周末日期的字体颜色

javascript - 将 less/scss/sass 与包含莫里斯图表等颜色的插件一起使用