Internet explorer 8 为什么';我的网页在Internet Explorer 8中不滚动吗?

Internet explorer 8 为什么';我的网页在Internet Explorer 8中不滚动吗?,internet-explorer-8,Internet Explorer 8,所以我花了大量时间编写和设计这个网页,它在我测试过的每一款浏览器上都能完美运行:IE7、IE9、Firefox、Chrome、Safari。但是当我在IE8(并且只有IE8)中查看网页时,垂直滚动被禁用。滚动条就在那里,但它已关闭,我无法使用它或鼠标滚轮 如果有必要的话,我会发布网页的代码,但首先我想看看是否有人听说过这种情况,或者有什么初步想法。好的,我知道了。如果你把放在高度:“100%”在页面CSS样式表的html标记中,它将在IE8中中断滚动,但其他浏览器仍然可以工作。如图所示。我也曾多

所以我花了大量时间编写和设计这个网页,它在我测试过的每一款浏览器上都能完美运行:IE7、IE9、Firefox、Chrome、Safari。但是当我在IE8(并且只有IE8)中查看网页时,垂直滚动被禁用。滚动条就在那里,但它已关闭,我无法使用它或鼠标滚轮


如果有必要的话,我会发布网页的代码,但首先我想看看是否有人听说过这种情况,或者有什么初步想法。

好的,我知道了。如果你把
放在高度:“100%”
在页面CSS样式表的
html
标记中,它将在IE8中中断滚动,但其他浏览器仍然可以工作。如图所示。

我也曾多次遇到此类问题。IE8的滚动条在普通HTML页面中不应可见。因此,请检查
标签内的内容。可能有一些
边距
填充
标记

我目前正在使用IE8,但没有显示这样的滚动条。无需为
HTML
BODY
固定
高度:100%
。请深入查看您的页面。

您在其他IE8(而不是本地IE8)上尝试过吗?也许问题出在你的ie8上

  • 在无加载项模式下运行或尝试禁用所有加载项(包括条)
  • 恢复高级设置。工具->互联网选项->高级->恢复高级选项

如果您正在使用CSS,您可能需要重置CSS值,以便页面在IE8中正确呈现。我已经提供了链接以及来自的代码片段。这可能对你有帮助。如果有什么问题的话,这是一个很好的网站,如果你正在开始开发的话

重置到开始的位置

CSS重置的概念最早是由Andrew Krespanis在互联网上漫游恐龙的时候(确切地说是2004年)正式讨论的。在他的文章中,他建议在CSS文件的开头使用通用选择器(*)来选择所有元素,并为它们的边距和填充设置0值,如下所示:

* {
   margin: 0;
   padding: 0;
}
通用选择器的作用类似于通配符搜索,类似于编程中的正则表达式匹配。因为在本例中,*前面没有另一个选择器,所以所有元素(理论上,某些浏览器不完全支持它)都是匹配的,因此所有元素的所有边距和填充都被删除(因此我们避免了示例1中显示的间距差异)

将通用选择器margin/padding reset应用到前面的示例中,我们现在删除了所有浏览器之间所有不一致的间距(换句话说,我们不会让浏览器替我们思考,而是让他们知道谁是老板)

示例2:应用通用选择器边距/填充重置

但是现在我们在段落之间没有任何间隔,所以在通用选择器重置下面的某个地方,我们将声明我们希望段落的样子。你可以通过多种方式来实现这一点——你可以在段落的开头或顶部添加边距(或填充),也可以同时添加边距和填充。您可以使用ems作为单位、像素或百分比

重要的是,我们选择浏览器渲染它的方式。在我们的例子中,我选择在段落的顶部和底部添加边距(而不是填充),但这是我的选择,您可能希望以不同的方式进行操作

以下是我使用的:

 * { margin:0; padding:0; }
    p { margin:5px 0 10px 0; }
示例3:在通用选择器之后声明样式规则

Note: The example I used for discussion is a simplified example. If you only used paragraphs for your web pages and no other elements, you wouldn’t want to reset your margins to 0 using the universal selector only to declare a style rule right after it for your paragraph. We’ll discuss this more fully along with other best practices later on down the page.
此后不久,CSS大师埃里克·迈耶(Eric Meyer)进一步建立了重置边距和填充的概念。在Eric Meyer的探索中,他讨论了Tanek撤消默认HTML样式(他称之为undohtml.css)的工作,该样式不仅重置边距和填充,还重置其他属性,如线条高度、字体样式和列表样式(一些浏览器对无序列表项使用不同的项目符号)

经过多次迭代和改进,我们找到了一个奇妙的解决方案,称为CSS重置重新加载CSS重置,它不仅通过命名所有可能的HTML标记(因为通用选择器无法将重置应用于所有HTML标记),使此CSS重置方法比通用选择器方法更精确,但也为诸如表之类的麻烦元素设置默认值(在这些元素中,边框折叠属性在浏览器中呈现不一致)

当然,还有其他重置CSS的方法(例如Yahoo!的YUI Reset CSS,我目前在六个版本中使用),您可以根据自己的偏好和项目需要来启动自己的CSS

地点:


注意:我在这方面有点生疏,所以请容忍我

主要有三件事你应该看到

  • 如果已将样式指定为溢出:隐藏
  • 如果您在页面百分比中给出了较高的值
  • 如果您已经给出float:static
  • 解决这个问题,你的IE 8问题就会解决


    原因:IE 8与CBC检查的其他任何东西都不同,IE First!对于主题,如果您将溢出设置为隐藏,IE 8将隐藏(仅滚动条)滚动条;如果您的位置高度为100%,IE 8将溢出设置为隐藏(可以说是自己设置的!)n float是一个可以超出页面大小的元素,如果您将其作为继承或相对元素,但静态不会动态增加。

    下面是一种使滚动条在100%高度下工作的方法。虽然不是最好的解决方案,但它现在可以在IE8中滚动

    html {
        overflow-y: hidden\9;
    }
    html, body {
        height: 100%\9;
    }
    body {
        overflow-y: scroll\9;
    }
    

    你需要先添加一些细节…CSS?基本的HTML结构?这很有趣,当我查看CSS样式表以获得这些细节时,我看到了一些我以前从未见过的东西,它解决了问题!我将把它放在这里作为一个答案,以防其他人遇到类似的情况。不,我放弃了,并将背景渐变设置为一个拉伸图像文件。粘性页脚依赖于
    html,body{height:100%}