【问题标题】:Safari scrolling div stuckSafari滚动div卡住了
【发布时间】:2011-08-17 04:28:17
【问题描述】:

我正在制作一个必须支持所有浏览器的网站。 我已经测试过 IE、FF、Opera、Chrome 并解决了很多与 CSS 和 jQuery 兼容性相关的问题……但最后一件事让我抓狂:(

Safari 在垂直 div 滚动条上无法正常工作。它在第一次访问时被阻止在 div 的底部。放大/缩小页面是解锁它的唯一方法......然后它就可以工作......

我有这个 CSS(只是其中的一部分):

html, body {
margin: 0px 0px 0px 0px; 
font-family: "Trebuchet MS", sans-serif;
background-color:#FFF2E6;
height:100%;
overflow:hidden;
}

#content {
margin-top:5px;
margin-left:170px;
position:fixed;
float:right;
width:88%; 
height: 85%; 
display:inline;
overflow:auto;
background-color:#E5E5E5;
}

#main_content {
position:static;
width:99.8%; 
height: 85%; 
}

HTML 页面(只是感兴趣的块):

<div id="main_content">
  <div id="menu">
      <p>Menu</p>
      ... menu block ...
  </div>
  <div id="content"><p>Content</p></div>
</div>

有什么办法可以解决 Safari div 滚动卡住的问题吗? 非常感谢您的帮助,对不起我的英语。

【问题讨论】:

    标签: html css safari scroll


    【解决方案1】:

    只是运气好,不知道会不会成功:

    尝试在您的#content css 块中使用zoom:1;。虽然它不是一个被广泛“支持”的标签,但我记得它在 IE 中为某些 css 创造了奇迹,也许它也适用于 Safari。

    对不起,如果我错了。

    【讨论】:

    • 别担心,伙计 :) 无论如何感谢您的回复。我已经尝试了缩放 css 标签,但它仍然无法正常工作。顺便说一句,我注意到 Chrome 也受到了影响。似乎所有的 webKit 浏览器都受到“第一次访问时 div 滚动卡住”的错误影响。
    【解决方案2】:

    问题是我有一个 PHP 生成的页面,它通过 Ajax 函数打印在 #content div 中,这个页面有一些用于文件上传的 iframe 标签(在 jQuery/Ajax 中上传文件的唯一有效技巧上下文..) 这些iframe 将 src 属性设置为src='#' 这使得 Safari 卡在一个简单的 div 滚动上......

    因此,如果您遇到此类问题,请记住将您的 iframe src="#" 修复为 iframe src="

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-30
      • 2018-01-03
      相关资源
      最近更新 更多