桃源老赵 发表于 2011-8-12 12:12
在默认风格下显示正常
在其他风格下显示错乱
可能是与您的风格模板冲突了.
解决方法: 将global_footer嵌入点放到外层, 使其父节点为body, global_footer不能被其它HTML标签包含, 只能被body标签包含. 之前也有人遇到类似的问题了
由于IE6下不支持CSS的position:fixed;定位, 目前基本上都是采用CSS表达式或javascript来进行对IE6修正支持, 也就是浏览器为IE6时, 使用了postion:absolute;方式的绝对定位, 然后判断浏览器窗口的高度, 根据浏览器窗口的高度变化来改变高度.
你的站点中, 任务栏插件的代码插入了<div class="v2-wp"></div>中, 当浏览器支持fixed定位的话显示是没问题的, 因为fixed生成绝对定位的元素,相对于浏览器窗口进行定位, 也相当于对<html></html>或<body></body>。但是因IE6不支持fixed而使用了absolute, absolute生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。也就是相对了<div class="v2-wp"></div>, 你的v2-wp类宽度为980px并居中, 所以插件会相对于<div class="v2-wp"></div>进行偏移.
解决方法:将你站点自定义的模板的global_footer插件嵌入点放到<div class="v2-wp"></div>,使<div class="v2-wp"></div>同一级别, 使它们的父元素均为body, 因为Discuz!原模板的global_footer插件嵌入点就是这样做的.
附CSS position值说明, 来源:http://www.w3school.com.cn/css/pr_class_position.asp
值 描述
absolute
生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。
元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
fixed
生成绝对定位的元素,相对于浏览器窗口进行定位。
元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
relative
生成相对定位的元素,相对于其正常位置进行定位。
因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。
static 默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
inherit 规定应该从父元素继承 position 属性的值。 |