首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内部div元素通过外滚动条滚动

问内部div元素通过外滚动条滚动
EN

Stack Overflow用户
提问于 2014-05-15 12:27:49
回答 2查看 7.5K关注 0票数 2

我有一个div元素垂直滚动;滚动条在div元素本身中。我希望在div之外有一个滚动条,类似于一个典型的网页滚动条。滚动条看起来像任何其他网页,但是当滚动时,只滚动这个特定的div元素。

代码语言:javascript
复制
<div id="outer">
    <div id="inner"> //to be scrolled
        <!-- content -->
    </div>
</div>

示例Fiddle:http://jsfiddle.net/7pgyt/

我想把滚动条放在最右边的红色区域。滚动条滚动蓝色区域。这能在HTML和CSS中实现吗?

可能的结果如下:

​

​

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-15 13:22:45

考虑到以下html结构:

代码语言:javascript
复制
<div id="wrapper">
    <div id="top" class="bar"></div>
    <div id="outer">
        <div id="inner"></div>
    </div>
    <div id="bottom" class="bar"></div>
</div>

您可以使用下列样式:

代码语言:javascript
复制
#wrapper {
    position:relative;
    height:200px;
}

#outer {
    background-color: red;
    overflow-y:auto;
    height: 200px;
}

#inner {
    color: white;
    font-weight: bold;
    margin-left: auto;
    margin-right: auto;
    background-color: blue;
    margin:50px;
    position:relative; z-index:1;
}

.bar {
    height:50px; 
    z-index:2;
    position:absolute; 
    background:red; 
    left:0; 
    right:20px;
}

#bottom {bottom:0;}
#top {top:0; }

示例

使用psuedo选择器而不是条形div的示例

票数 6
EN

Stack Overflow用户

发布于 2014-05-15 13:26:54

您可以使用以下内容:

演示Fiddle

HTML

代码语言:javascript
复制
<body>
    <div id="outer"></div>
    <div id="inner">..content...</div>
</body>

CSS

代码语言:javascript
复制
body {
    position:relative;
    width:100%;
    margin:0;
    padding:0;
}
div {
    box-sizing:border-box;
}
#outer {
    border:50px solid red;
    padding: 50px;
    position:absolute;
    height:200px;
    right:17px;
    left:0;
}
#inner {
    color: white;
    font-weight: bold;
    height: 200px;
    padding:50px;
    margin-left: auto;
    margin-right: auto;
    overflow-y: scroll;
    background-color: blue;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23678233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档