Internet explorer 位置:绝对到浏览器/窗口的绝对
我的理解是,Internet explorer 位置:绝对到浏览器/窗口的绝对,internet-explorer,quirks-mode,css,Internet Explorer,Quirks Mode,Css,我的理解是,position:absolute对于第一个处于非静态位置的父母来说是绝对的。如果没有父对象具有指定的位置,则该位置将是浏览器/窗口的绝对位置 position:fixed在另一方面对浏览器来说是绝对的,但是如果处于怪癖模式,它不适用于IE 我的问题是,我想要的东西是top:0;左:0但该网站处于怪癖模式,我只在我的个人div内编辑(它是一个像myspace这样的用户网站)。有许多父div具有位置:relative 如何使position:absolute像position:fixe
position:absolute
对于第一个处于非静态位置的父母来说是绝对的。如果没有父对象具有指定的位置,则该位置将是浏览器/窗口的绝对位置
position:fixed
在另一方面对浏览器来说是绝对的,但是如果处于怪癖模式,它不适用于IE
我的问题是,我想要的东西是top:0;左:0代码>但该网站处于怪癖模式,我只在我的个人div内编辑(它是一个像myspace这样的用户网站)。有许多父div具有位置:relative
如何使position:absolute
像position:fixed
一样工作,而不需要对象静止(如果需要,它可以静止)?早期版本的IE不支持position:fixed
我所知道的唯一一件事是JavaScript解决方案,如下所示:
var layerPadding = 5;
function layerScrollFixEx() {
if (layerGetScrollPosition() != (document.getElementById('layer').offsetTop - layerPadding)) {
document.getElementById('layer').style.top = layerGetScrollPosition() + layerPadding + "px";
}
}
function layerGetScrollPosition() {
if (typeof window.pageYOffset != 'undefined') {
return window.pageYOffset;
}
else if (typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat') {
return document.documentElement.scrollTop;
}
else if (typeof document.body != 'undefined') {
return document.body.scrollTop;
}
}
layerScrollInterval = window.setInterval("layerScrollFixEx()", 1);
这是我不久前做的一些代码的代码摘录,当时这仍然是相关的。早期版本的IE不支持position:fixed
我所知道的唯一一件事是JavaScript解决方案,如下所示:
var layerPadding = 5;
function layerScrollFixEx() {
if (layerGetScrollPosition() != (document.getElementById('layer').offsetTop - layerPadding)) {
document.getElementById('layer').style.top = layerGetScrollPosition() + layerPadding + "px";
}
}
function layerGetScrollPosition() {
if (typeof window.pageYOffset != 'undefined') {
return window.pageYOffset;
}
else if (typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat') {
return document.documentElement.scrollTop;
}
else if (typeof document.body != 'undefined') {
return document.body.scrollTop;
}
}
layerScrollInterval = window.setInterval("layerScrollFixEx()", 1);
这是我不久前做的一些代码的代码摘录,当时这仍然是相关的。你能用javascript杀死整个外部html吗<代码>文档.getElementsByTagName(“正文”)[0].innerHTML=“这是我的div”代码>@thejh我试过了,IE抱怨“无法在关闭子元素之前修改父容器元素”,请在onload处理程序中执行此操作。在窗口中添加一个load
处理程序。伙计,我感觉到了你的痛苦,理解了你的问题,我现在也遇到了同样的问题=[你能用javascript杀死整个外部html吗?document.getElementsByTagName(“body”)[0]。innerHTML=“这是我的div”
@thejh我试过了,IE抱怨“在关闭子元素之前无法修改父容器元素”在onload处理程序中执行。将load
处理程序添加到窗口。伙计,我感觉到了你的痛苦,理解了你的问题,我现在也遇到了同样的问题。=[这似乎只是模仿了“修复”的能力。”在一个地方,通过重新定义它的位置。我希望做top:0;left:0
参考浏览器窗口正是它,示例仅显示垂直滚动的修复…但是您可以轻松地调整它您希望元素在滚动时保持在原来的位置,不是吗?这就是修复的位置。否则您需要这是绝对的,这是完全支持…这似乎只是模仿的能力,以“修复”在一个地方,通过重新定义它的位置。我希望做top:0;left:0
参考浏览器窗口正是它,示例仅显示垂直滚动的修复…但是您可以轻松地调整它您希望元素在滚动时保持在原来的位置,不是吗?这就是修复的位置。否则您需要这是绝对的,这是完全支持。。。