javascript - 为什么div里面溢出: hidden; div not taking full width of it's content?

标签 javascript css reactjs

.container {
  white-space: nowrap;
  overflow: hidden;
}

.inner {
  width: 100%;
}
.list-item {
  display: 'inline-block',
  boxSizing: 'border-box',
  border: '3px solid black'
}



import React, { Component } from 'react'



function calcItemWidth(width, tiles) {
  return width / tiles
}

export class Container extends Component {
  constructor() {
    super(...arguments);

  }

  get container() {
    return document.querySelector('.container');
  }

  componentDidMount() {
    const itemwidth = calcItemWidth(this.container.clientWidth, 2)

    const listItems = document.querySelectorAll('.list-item');
    Array.from(listItems)
      .map(item => {
        item.style.width = `400px`; 
      })
  }

  renderChildren() {
    return this.props.children.map(
      (child, index) => (
        <li key={child.key} data-index={index} className="list-item" style={listItem}>
          {child}
        </li>
      )
    )
  }

  render() {
    return (
      <div style={container} className="container">
        {this.renderChildren()}
      </div>
    )
  }
}

export default Container

我有一个名为 container 的组件。 Container 的宽度固定为 800px,并且overflow hidden。在 container 中,我有 inner,我希望 inner 是它包含的元素的宽度。因此,如果我有 4 个 listItems,则内部宽度应为 1600px。

我尝试将 inner 的宽度设置为 width: 100%min-width: 100% 等,但它没有占用其子项的宽度。如何让inner超出容器的宽度?

编辑:内部的溢出不必可见,也不必有 slider 。它在物理上必须是其子项的总宽度。

最佳答案

添加display: inline-block;inner

关于javascript - 为什么div里面溢出: hidden; div not taking full width of it's content?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50318907/

相关文章:

html - 将我的右侧边栏向右移动更多

jquery - 使用 jQuery 显示前一个可折叠 div

css - 如何使用CSS将内联div居中?

javascript - 使用状态将数据传递给组件

javascript - react 校验和无效的服务器渲染

javascript - Django 网站上的搜索栏无法运行

javascript - EXTJS 3.X - 防止 TreePanel 自动加载

javascript - 我可以在同一页面的 javascript 中使用两次吗?

javascript - 如何修复 ChartJS 中看起来模糊的图表?

reactjs - React 应用程序的运行时环境是什么,React 应用程序中的请求-响应流程是什么