前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >html滚动条使用,以及页面有多个div块,如何让body页面不使用滚动条,只在某个div内使用滚动条

html滚动条使用,以及页面有多个div块,如何让body页面不使用滚动条,只在某个div内使用滚动条

作者头像
全栈程序员站长
发布2022-08-05 08:27:20
4.5K0
发布2022-08-05 08:27:20
举报

大家好,又见面了,我是你们的朋友全栈君。

滚动条基本知识:

建议比价华丽的页面使用overflow:scroll这个样式的滚动条,比较好看。

代码语言:javascript
复制
scrollbar属性、样式详解
1. overflow内容溢出时的设置(设定被设定对象是否显示滚动条)
    overflow-x水平方向内容溢出时的设置
    overflow-y垂直方向内容溢出时的设置
    以上三个属性设置的值为visible(默认值)、scroll、hidden、auto。


2. scrollbar-3d-light-color立体滚动条亮边的颜色(设置滚动条的颜色)
    scrollbar-arrow-color上下按钮上三角箭头的颜色
    scrollbar-base-color滚动条的基本颜色
    scrollbar-dark-shadow-color立体滚动条强阴影的颜色
    scrollbar-face-color立体滚动条凸出部分的颜色
    scrollbar-highlight-color滚动条空白部分的颜色
    scrollbar-shadow-color立体滚动条阴影的颜色


我们通过几个实例来讲解上述的样式属性:


1.让浏览器窗口永远都不出现滚动条


    没有水平滚动条
    <body style="overflow-x:hidden">
    没有垂直滚动条
    <body style="overflow-y:hidden">
    没有滚动条
    <body style="overflow-x:hidden;overflow-y:hidden">或<body
    style="overflow:hidden">




2.设定多行文本框的滚动条


   没有水平滚动条
   <textarea style="overflow-x:hidden"></textarea>


   没有垂直滚动条
   <textarea style="overflow-y:hidden"></textarea>


   没有滚动条
   <textarea style="overflow-x:hidden;overflow-y:hidden"></textarea>
   或<textarea style="overflow:hidden"></textarea>


3.设定窗口滚动条的颜色


设置窗口滚动条的颜色为红色<body style="scrollbar-base-color:red">
scrollbar-base-color设定的是基本色,一般情况下只需要设置这一个属性就可以达到改变滚动条颜色的目的。
加上一点特别的效果:
<body style="scrollbar-arrow-color:yellow;scrollbar-base-color:lightsalmon">


4.在样式表文件中定义好一个类,调用样式表。


<style>
.coolscrollbar{scrollbar-arrow-color:yellow;scrollbar-base-color:lightsalmon;}
</style>


这样调用:
<textarea class="coolscrollbar"></textarea>


Scrollbar-Face-Color为滚动条表面颜色设定;
Scrollbar-Highlight-Color为滚动条上斜面和左斜面颜色设定;
Scrollbar-Shadow-Color为滚动条下斜面和右斜面颜色设定;
Scrollbar-3Dlight-Color为滚动条上边和左边的边沿颜色设定;
Scrollbar-Arrow-Color为滚动条两端箭头颜色设定。
Scrollbar-Track-Color为滚动条底板颜色设定;
Scrollbar-Darkshadow为滚动条下边和右边边沿颜色设定。


举例:


 <textarea style="width:330px; overflow:scroll; overflow-x:hidden;"></textarea>

2,页面有多个div块,如何让body页面不使用滚动条,只在某个div内使用滚动条

先说说正常显示的,显示滚动条和不显示滚动条,效果图如下:

html滚动条使用,以及页面有多个div块,如何让body页面不使用滚动条,只在某个div内使用滚动条
html滚动条使用,以及页面有多个div块,如何让body页面不使用滚动条,只在某个div内使用滚动条

代码:

代码语言:javascript
复制
<html>
<body>

<h3>iframe 中始终显示滚动条:</h3>
<iframe src ="/index.html" width="200" height="200" scrolling="yes">
  <p>Your browser does not support iframes.</p>
</iframe>

<h3>iframe 中从不显示滚动条:</h3>
<iframe src ="/index.html" width="200" height="200" scrolling="no">
  <p>Your browser does not support iframes.</p>
</iframe>

</body>
<script>
    
</script>
</html>

使用js,不显示上图最右边的总的滚动条

代码:

代码语言:javascript
复制
<html>
<body>

<h3>iframe 中始终显示滚动条:</h3>
<iframe src ="/index.html" width="200" height="200" scrolling="yes">
  <p>Your browser does not support iframes.</p>
</iframe>

<h3>iframe 中从不显示滚动条:</h3>
<iframe src ="/index.html" width="200" height="200" scrolling="no">
  <p>Your browser does not support iframes.</p>
</iframe>

</body>
<script>
    document.documentElement.style.overflowY = 'hidden' 
</script>
</html>

就加了一行代码;

使用jquery实现的代码:

代码语言:javascript
复制
<html>
<body>

<h3>iframe 中始终显示滚动条:</h3>
<iframe src ="/index.html" width="200" height="200" scrolling="yes">
  <p>Your browser does not support iframes.</p>
</iframe>

<h3>iframe 中从不显示滚动条:</h3>
<iframe src ="/index.html" width="200" height="200" scrolling="no">
  <p>Your browser does not support iframes.</p>
</iframe>

</body>
<script>
      $(document.body).css({
		   "overflow-y":"hidden"
	  });
</script>
</html>

注:1,不显示总的滚动条,会导致页面内容过多事不能显示超出页面高度的内容,所有要注意协调。

2,另外可能会出现关闭了整个body的滚动条后,发现div的滚动即使启动了也没有显示,这种情况可能是没有设置此div的高度或宽度,这是需要设置的。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/106247.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档