iframe滚动条充当浏览器滚动条

 

在作博客项目的时候,使用了iframe,方便根据选择的文章类别切换显示的内容,可是文章通常都有不少,经过bootstrap的媒体列表的方式显示的话,iframe是必定会出现滚动条的,特别是我添加了一个“滚动条触底以后动态加载更多的文章”的功能。这样页面上就会有两个滚动条,特别奇怪。css

在网上学习了一些以后,我把iframe的滚动条隐藏了(不是将iframe的scrolling属性改成scrolling=“no”),而是经过css将其在视觉上隐藏起来(下面有代码),这样就能够只出现一个滚动条,可是这样的话,文章确实一直在动态加载,可是浏览器的滚动条却一直没有动,感受也很奇怪~web

最后
我决定把浏览器的滚动条隐藏,iframe的滚动条放出来,而且经过对iframe和承载它的div作了一些css上的调整,让iframe滚动条“充当”了浏览器的滚动条。图片中箭头指向的滚动条其实是iframe的
bootstrap

 

 css:对homepage的滚动条隐藏:浏览器

/*在视觉上将iframe的滚动条隐藏*/
/*主要是将width置为0px*/ ::-webkit-scrollbar { width: 0px; height: 5px;
        }
        /*下面的css定义能够不写,若是width不是0px的时候,经过下面的css定义能够自定义其余样式的滚动条*/ ::-webkit-scrollbar-thumb{ background-color: transparent; -webkit-border-radius: 5px; border-radius: 5px;
        } ::-webkit-scrollbar-thumb:vertical:hover{ background-color: transparent;
        } ::-webkit-scrollbar-thumb:vertical:active{ background-color: transparent;
        } ::-webkit-scrollbar-button{ display: none;
        } ::-webkit-scrollbar-track{ background-color: transparent;
        }

对承载iframe的div和iframe,必定要充满整个浏览器可视页面,若是有footer和nav的话,也要在右侧给滚动条留出大概15px的宽度,否则就不像浏览器滚动条了学习

<div class="container main-page" >
        <iframe src="/blog/p/recommend" frameborder="0" scrolling="yes" height="100%" width="100%" allowtransparency="true" id="external-frame" name="frame">
        </iframe>
</div>

 

文章转自:https://blog.csdn.net/qq_41604498/article/details/99735882spa

反正都是本身的博客~~.net

相关文章
相关标签/搜索