Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 位置:固定元件消失在铬上_Javascript_Html_Css_Google Chrome - Fatal编程技术网

Javascript 位置:固定元件消失在铬上

Javascript 位置:固定元件消失在铬上,javascript,html,css,google-chrome,Javascript,Html,Css,Google Chrome,我有一个侧边栏,它是位置:固定的,还有一个标签 第一张图片仅显示关闭的侧栏选项卡,第二张图片显示的是活动侧栏。只有在react router中使用HashLocation更改路由时,问题才会出现。当我直接进入正确的URL时,一切都很好 我发现了,但问题是我已经在使用transform:translate打开和隐藏侧边栏 若我应用这个修正,它会显示,但边栏上的元素正在消失 侧边栏的规则如下所示: .landscape-sidebar { bottom: 0; height: 100%;

我有一个侧边栏,它是位置:固定的,还有一个标签

第一张图片仅显示关闭的侧栏选项卡,第二张图片显示的是活动侧栏。只有在react router中使用HashLocation更改路由时,问题才会出现。当我直接进入正确的URL时,一切都很好

我发现了,但问题是我已经在使用transform:translate打开和隐藏侧边栏

若我应用这个修正,它会显示,但边栏上的元素正在消失

侧边栏的规则如下所示:

.landscape-sidebar {
  bottom: 0;
  height: 100%;
  position: fixed;
  right: 0;
  top: 0;
  transform: translateX($landscape-sidebar-width);
  transition: $landscape-sidebar-transition-time transform $landscape-sidebar-transition-type;
  width: $landscape-sidebar-width;
  z-index: $level-4;

  &.show {
    transform: translateX(0);

    .content:hover:before {
      background-color: $landscape-sidebar-background-color;
    }
  }
}
来自react组件的相关渲染方法:

这个问题还有其他解决办法吗


我不能使用position:absolute,因为它会导致Firefox由于transform:translate而显示滚动条。只有在react router中使用HashLocation更改路由时,问题才会出现。也许提供相关的代码是有用的,它是react路由器的基本元素,这是在路由之间转换的方式。我不知道我能给什么密码you@TomaszKasperek相关的HTML和JavaScript将是一个良好的开端。
render() {
    const sidebarClass = classNames({
      'landscape-sidebar': true,
      'show': this.state.isOpen,
    });

    return (
      <div className={ sidebarClass }>
        <div
          className="content"
          ref="sidebarContent"
          onWheel={ this.handleScroll }
        >
          <span
            ref="tab"
            onClick={ this.toggleSidebar }
            className="tab"
          />
          { this.props.children }
        </div>
      </div>
    );
  }