Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.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_Css_Modal Dialog - Fatal编程技术网

Javascript 如何使用主窗口滚动条滚动模式?

Javascript 如何使用主窗口滚动条滚动模式?,javascript,css,modal-dialog,Javascript,Css,Modal Dialog,问题是,如果您有一个长模式,那么您需要添加一个向下滚动的选项 然而,将滚动条添加到模式本身对用户体验来说是不好的,因为人们直觉上习惯于使用屏幕右端的滚动条进行滚动 一些网站已经解决了这个问题,比如Twitter和产品搜索: 我仍然不知道如何实现它。我一直在网上搜索一些资料,但不幸的是没有找到任何 如果你对怎么做有什么想法,请告诉我 更新: 以下是我当前模式的样式: .modal { box-shadow:0 12px 30px rgba(0,0,0,0.3); z-index

问题是,如果您有一个长模式,那么您需要添加一个向下滚动的选项

然而,将滚动条添加到模式本身对用户体验来说是不好的,因为人们直觉上习惯于使用屏幕右端的滚动条进行滚动

一些网站已经解决了这个问题,比如Twitter和产品搜索:

我仍然不知道如何实现它。我一直在网上搜索一些资料,但不幸的是没有找到任何

如果你对怎么做有什么想法,请告诉我

更新:

以下是我当前模式的样式:

.modal {
    box-shadow:0 12px 30px rgba(0,0,0,0.3);
    z-index:103;
    border-radius:5px;
    text-align:center;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 60px;
    position:fixed;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(100vh - 100px);
 }

推特上的滚动条不是主窗口滚动条——它只是他们全屏模式对话框中的一个滚动条,然后他们将模式对话框的内容放在中间。因此,当您滚动模式时,滚动条位于最右侧,就像主窗口滚动条一样

要做到这一点,我只需将您的
.model
设置为带有
溢出:auto
的全屏模式,然后
绝对
将模式的内容放在其中。因此,您正在滚动主
.modal
窗口,滚动条位于最右侧,与主窗口滚动条相同

.modal{
z指数:103;
文本对齐:居中;
位置:固定;
左:0;
右:0;
排名:0;
底部:0;
溢出:自动;
}
.modalContent{
位置:绝对位置;
顶部:60px;
左:50%;
盒影:0 12px 30px rgba(0,0,0,0.3);
-webkit转换:translateX(-50%);
转化:translateX(-50%);
边界半径:5px;
边缘底部:60px;
}

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话

废话


是否显示您的代码?你在使用引导模式吗?至少分享你正在使用的主体/模式内容,如果你尝试过任何具体的但不起作用的内容,那就太好了。只是不要在视口中修复模式。定位它。然后它将是一个可滚动的元素。@MikeVayvala共享您的代码。“寻求调试帮助的问题(“此代码为什么不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现这些问题所需的最短代码。请参阅:如何创建。”——@MichaelCoker刚刚更新了问题我认为这是正确的概念。尽管如果你在背景中添加了足够的内容,你的演示会显示两个并排的滚动条:@MikeVayvala twitter所做的是在模态打开时将
.overlay enabled
添加到
body
,并设置
位置:relative;溢出:隐藏
您可以将其添加到用于触发模态的任何JS中。事实上,我在电脑上看不到双滚动条,但我在mac电脑上。你是吗?这能解决问题吗?是的,它看起来工作得很好。非常感谢你的帮助。