`
fangbubu
  • 浏览: 42816 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

页面滚动条处理

    博客分类:
  • CSS
阅读更多
GOOGLE到一些有用的资料:

[DIV+CSS]XHTML下的滚动条问题
1.xhtml下滚动条的颜色问题?

在原来的html的时候,我们可以这样定义整个页面的滚动条

body{
scrollbar-3dlight-color:#D4D0C8; /*- 最外左 -*/
   scrollbar-highlight-color:#fff; /*- 左二 -*/
   scrollbar-face-color:#E4E4E4; /*- 面子 -*/
   scrollbar-arrow-color:#666; /*- 箭头 -*/
   scrollbar-shadow-color:#808080; /*- 右二 -*/
   scrollbar-darkshadow-color:#D7DCE0; /*- 右一 -*/
   scrollbar-base-color:#D7DCE0; /*- 基色 -*/
   scrollbar-track-color:#;/*- 滑道 -*/
}

但是同样的代码,我们应用在 xhtml下就不起作用了,我相信好多好朋友也遇到过同样的问题
那么怎么才能在xhtml下应用滚动条样式呢?看下列代码

html{
scrollbar-3dlight-color:#D4D0C8; /*- 最外左 -*/
   scrollbar-highlight-color:#fff; /*- 左二 -*/
   scrollbar-face-color:#E4E4E4; /*- 面子 -*/
   scrollbar-arrow-color:#666; /*- 箭头 -*/
   scrollbar-shadow-color:#808080; /*- 右二 -*/
   scrollbar-darkshadow-color:#D7DCE0; /*- 右一 -*/
   scrollbar-base-color:#D7DCE0; /*- 基色 -*/
   scrollbar-track-color:#;/*- 滑道 -*/
}

这段代码和上一段唯一的不同就是在css定义的元素上,一个是body一个是html。我们再测试一下,把html页面的
"body"修改成"html"测试一下,发现依然可以实现效果。那到底是为什么呢?

在html和xhtml都通过,因为*就是定义页面上的任何标签当然也包括了“html”这个标签。

(ps:其实与其说是html与xhtml的区别到不如说是有无XHTML 1.0 transitional doctype的区别,但是如果你把页面的
XHTML 1.0 transitional doctype去掉的话,那么这个页面就没有doctype,默认的显示方式就是html4.01,不过
你要把XHTML 1.0 transitional doctype修改成HTML 4.01 doctype同样页面定义body也不会有效果的,虽然
这个页面的标准是html 4.01)


2.xhtml下frame页面横向滚动条的问题?

在用ie6浏览有框架的xhtml页面的时候,默认会水平和垂直滚动条会一起出现,这是ie6的一个
bug,在firefox上是正常的,出现的原因是其对XHTML 1.0 transitional doctype的解释缺陷.

对于这个bug一般有3种解决方案,

方法1:
代码:
html { overflow-y: scroll; }
原理:强制显示ie的垂直滚动条,而忽略水平滚动条
优点:完全解决了这个问题, 允许你保持完整的XHTML doctype.
缺点:即使页面不需要垂直滚动条的时候也会出现垂直滚动条。

方法2:
代码:
html { overflow-x: hidden; overflow-y: auto; }
原理:隐藏横向滚动,垂直滚动根据内容自适应
优点:在视觉上解决了这个问题.在不必要的时候, 未强制垂直滚动条出现.
缺点:只是隐藏了水平滚动条,如果页面真正需要水平滚动条的时候,
屏幕以外的内容会因为用户无法水平滚动,而看不到。

方法3:
代码:
body { margin-right: -15px; margin-bottom: -15px; }
原理:这会在margin的水平和垂直方向上添加一个负值, IE添加了该精确数值后, 便会去除对滚动条的需求假象.
优点:在视觉上解决了这个问题.,垂直滚动根据内容自适应
缺点:由于"人为创建"了15px的外边距(margin), 所以无法使用该填充过的屏幕区域.

以上摘自:http://hi.baidu.com/sandmax/blog/item/43fd0e4668dbc6096b63e59f.html


附:强制的滚动条:

问题中的"修复"该bug的技术, 同样可以用于其它目的. 利用CSS, 你可以有效地在Mozilla Firefox和Internet Explorer中显示或者隐藏垂直及水平滚动条.

强制显示滚动条:

html { overflow: scroll; }

强制隐藏滚动条:

html { overflow: hidden; }

隐藏IE的水平滚动条:

html { overflow-x: hidden; }

隐藏IE的垂直滚动条:

html { overflow-y: hidden; }

强制显示IE的水平滚动条:

html { overflow-x: scroll; }

强制显示IE的垂直滚动条:

html { overflow-y: scroll; }

强制显示Mozilla的水平滚动条:

html { overflow:-moz-scrollbars-horizontal; }

注意: 仅仅强制显示水平滚动条. 也就是说, 即使需要显示垂直滚动条时, 垂直滚动条也不会出现.

强制显示Mozilla的垂直滚动条:

html { overflow:-moz-scrollbars-vertical; }

注意: 仅仅强制显示垂直滚动条. 也就是说, 即使需要显示水平滚动条时, 水平滚动条也不会出现.

分享到:
评论

相关推荐

    JS去除iframe滚动条的方法

    在介绍JS去除iframe滚动条的方法之前,首先需要理解iframe元素在HTML中的作用。iframe元素代表了一个嵌入的网页,允许在一个HTML页面中嵌入另一个文档,...这些知识和技巧都是在处理iframe滚动条时应该考虑的重要方面。

    页面布局有滚动条

    在网页设计中,页面布局与滚动条是两个关键的元素,它们共同决定了用户在浏览网站时的体验。页面布局有滚动条,意味着网页的内容超过了单屏显示的范围,需要通过滚动来查看全部信息。这样的设计既有可能是由于内容...

    华丽滚动条滚动条Jquery

    在IT行业中,网页设计是至关...总之,"华丽滚动条滚动条Jquery"是一个关于如何利用Jquery增强网页滚动条视觉效果的主题。通过深入学习和实践,开发者不仅可以提升网页的美观度,还能优化用户在浏览网页时的交互体验。

    去掉网页中多余的滚动条

    #### 一、理解网页滚动条的基本概念 在开始解决实际问题前,我们先来了解一下滚动条的基本原理。滚动条是网页中用于帮助用户浏览内容的一种交互元素。当网页内容超出浏览器窗口大小时,浏览器会自动添加滚动条以便...

    vue自定义浏览器滚动条(兼容大部分浏览器含ie)_vue tree组件 下拉滚动条

    在前端开发中,有时我们需要对浏览器的默认滚动条进行自定义,以提升用户体验或符合页面设计风格。Vue.js,作为一款流行的JavaScript框架,提供了多种方式来实现这一需求。本篇文章将详细探讨如何在Vue项目中自定义...

    外部滚动条控制iframe

    然而,默认情况下,iframe内的滚动行为是独立于主页面的,即其滚动条无法通过外部元素进行直接控制。但在某些场景下,如构建统一的滚动体验、实现特殊的视觉效果或增强用户交互时,我们需要能够从外部控制iframe的...

    javascript经典特效---去掉页面的滚动条.rar

    本资源“javascript经典特效---去掉页面的滚动条.rar”提供了一个实现这一功能的方法。以下是对这个主题的详细解释: 首先,我们要明白浏览器的滚动条是由其默认的样式和行为控制的,但在JavaScript的帮助下,我们...

    滚动条刷新定位

    因此,“滚动条刷新定位”技术应运而生,它可以在页面刷新后将滚动条恢复到刷新前的位置,从而提升用户体验。 #### 二、技术原理 实现滚动条刷新定位主要涉及到以下几个方面: 1. **记录滚动位置**:在页面即将...

    textarea自适应高度标签,去除难看的滚动条

    然而,`textarea` 的默认行为可能导致一些视觉上的问题,比如固定的高度可能会限制用户输入,而滚动条则可能破坏页面的整体美感。针对这些问题,我们可以采用特定的技术来实现 `textarea` 的高度自适应和去除滚动条...

    去掉WebBrowser的边框和滚动条

    总的来说,通过上述方法,我们可以有效地去掉WebBrowser控件的边框和滚动条,使其更好地适应自定义界面的需求。在实际开发过程中,记得测试不同操作系统和浏览器版本的兼容性,确保功能的稳定性和一致性。在`...

    自定义滚动条(兼容所有浏览器)

    同时,避免过度复杂的样式导致的性能问题,因为滚动条的频繁交互可能会影响页面的流畅度。 **5. 测试与适配** 在项目开发过程中,务必进行多浏览器测试,确保自定义滚动条在不同环境下的表现。可以使用...

    滚动条比较复杂

    在网页设计中,滚动条是不可或缺的元素,特别是在处理大量内容时。滚动条的设计和表现方式对于用户体验有着重要影响。本主题"滚动条比较复杂"着重讨论如何在JavaScript和CSS的帮助下,实现对滚动条样式的自定义,以...

    jquery给表格加滚动条

    在网页设计中,当表格(Table)中的数据过多时,为保持页面的整洁与易读性,通常会采用滚动条来展示超出视口范围的内容。本示例将详细讲解如何利用jQuery库为普通的HTML表格添加滚动条,以实现数据的高效浏览。 一...

    jquery很炫的滚动条效果

    在网页设计中,用户体验往往受到各种细节的影响,其中之一就是滚动条。一个美观且功能完善的滚动条可以提升网站的视觉效果和交互体验。本教程将深入探讨如何使用jQuery创建一款炫酷的滚动条效果,该效果代码简洁,...

    elementUI滚动条,点击dom元素滚动到指定位置.pdf

    ElementUI 的滚动条组件是用来处理大型数据列表滚动的,它可以自动管理滚动条的显示和隐藏,并提供了许多实用的配置选项来满足不同的需求。在这个例子中,我们使用 ElementUI 的 `el-scrollbar` 组件来实现滚动条的...

    js自定义滚动条插件

    2. **初始化插件**:在页面DOM加载完成后,通过JavaScript调用插件的初始化方法,对指定的滚动条元素进行处理。 3. **设置选项**:根据设计需求,可以设置各种自定义选项,如滚动条的颜色、宽度、透明度等。 4. **...

    在TABControl和ProperPage子对话框中实现滚动条

    4. 实现滚动条处理函数:在消息映射函数中,根据滚动条的事件(如SB_LINELEFT、SB_LINERIGHT、SB_PAGEUP、SB_PAGEDOWN等)更新控件的位置。 ```cpp void CScrollablePropertyPage::OnHScroll(UINT nSBCode, UINT ...

    div滚动条优化

    在网页设计中,div元素是常用的布局容器,而滚动条则是当内容超出div范围时,帮助用户浏览更多内容的重要交互工具。"div滚动条优化"这个主题主要关注如何在不牺牲滚动功能的前提下,通过CSS样式和JavaScript技术来...

    vue监听 vue实时监听窗⼝滚动条

    在这个方法中,我们可以通过`window.pageYOffset`或`document.documentElement.scrollTop`或`document.body.scrollTop`来获取滚动条距离页面顶部的距离。这些属性在不同的浏览器中可能有所不同,所以通常需要进行...

    易语言API滚动条操作

    5. **设置滚动条参数**:这通常涉及到`SetScrollInfo`函数,它可以设置滚动条的最大值、最小值、当前位置、页面大小等。通过这个函数,我们可以精确控制滚动条的行为。 6. **设置窗口信息**:可能需要使用`...

Global site tag (gtag.js) - Google Analytics