【问题标题】:Css scroll content shadow effectcss滚动内容阴影效果
【发布时间】:2014-12-15 10:06:41
【问题描述】:

我正在寻找一个插件(我猜类似于粘性标题),它可以在可滚动内容上创建框阴影效果(当您向下滚动时)。

我找到了an existing technique which is using pure CSS tricks,这正是我需要的(使用background-color 属性)

但是,可滚动内容高于阴影,我需要它位于阴影下方。

是否有任何插件可以创建相同的效果,但使用带有阴影和动态不透明度的内部 div 或类似的东西?

【问题讨论】:

    标签: javascript jquery html css


    【解决方案1】:

    您可以尝试使用box-shadow 并根据scrollTop 值动态应用onscroll 事件。也许是这样的:

    document.querySelector('div').onscroll = function() {
        this.classList[this.scrollTop < 20 ? 'add' : 'remove']('shadow-top');
        this.classList[this.scrollHeight - this.clientHeight - this.scrollTop < 20 ? 'add' : 'remove']('shadow-bottom');
    };
    

    演示:http://jsfiddle.net/0aevh7kv/


    UPD。我认为如果 div 可以向上滚动,OP 想要在顶部显示阴影。在这种情况下,它就更简单了:

    document.querySelector('div').onscroll = function() {
        this.classList[this.scrollTop > 20 ? 'add' : 'remove']('shadow-top');
    };
    ul, li { padding: 0; margin: 0; }
    
    div {
      height: 200px;
      border: 1px #AAA solid;
      overflow: auto;
      transition: box-shadow .2s ease;
    }
    div.shadow-top {
      box-shadow: inset 0 4px 10px -3px #808080;
    }
    <div>
        <ul>
            <li>text cotent 1</li><li>text cotent 2</li><li>text cotent 3</li><li>text cotent 4</li><li>text cotent 5</li><li>text cotent 6</li><li>text cotent 7</li><li>text cotent 8</li><li>text cotent 9</li><li>text cotent 10</li><li>text cotent 11</li><li>text cotent 12</li><li>text cotent 13</li><li>text cotent 14</li><li>text cotent 15</li><li>text cotent 16</li><li>text cotent 17</li><li>text cotent 18</li><li>text cotent 19</li><li>text cotent 20</li>
        </ul>
    </div>

    【讨论】:

    【解决方案2】:

    例如,您可以使用box-shadow: inset 0 0 10px #000000;http://css-tricks.com/snippets/css/css-box-shadow/

    【讨论】:

    • 只有向下滚动内容时才需要显示阴影。这就像一个视觉反馈,您在可见滚动区域之外有内容
    • @RaraituL 你可以用 jQuery 切换它:)
    • 如果我切换它(只是在滚动时显示/隐藏阴影),我不会有渐进效果。根据您滚动的次数,我需要阴影从浅灰色变为深灰色
    • @RaraituL 你可以用css设置动画
    猜你喜欢
    • 1970-01-01
    • 2015-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 2019-06-01
    • 2011-05-24
    相关资源
    最近更新 更多