DIV 的绝对布局问题!

jeerisguo 2007-05-19 03:39:34
我用 javascript 延迟显示DIV 并屏幕居中显示

遇到问题:当网页有滚动条的时候,div就不能按着屏幕居中了。

也就是说把滚动条下拉一下DIV 就不屏幕居中了,

请问这个问题该怎么决绝?
达到效果是不管滚动条拉在什么位置DIV总能是居中显示出来的。


这是显示方法
function openFlyBar(){
divFlyBar.style.visibility = "visible";
divFlyBar.style.top=(document.body.clientHeight-divFlyBar.offsetHeight)/2+"px";
divFlyBar.style.left=(document.body.clientWidth-divFlyBar.offsetWidth)/2+"px";
}

<div id="divFlyBar" style="Z-INDEX:100; VISIBILITY:hidden;POSITION:absolute">测试</div>

延迟显示DIV
<script>
window.setTimeout("openFlyBar()",1500);
</script>
...全文
416 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunday1979 2007-05-20
  • 打赏
  • 举报
回复
补充一下,以上只能适用于ie5,对于ie6,要使用document.getElementById和document.documentElement
chouchy 2007-05-20
  • 打赏
  • 举报
回复
divFlyBar.style.top=(document.body.scrollTop+document.body.clientHeight-divFlyBar.offsetHeight)/2+"px";
sunday1979 2007-05-20
  • 打赏
  • 举报
回复
试一下这个:
divFlyBar.style.top=document.body.scrollTop+document.body.offsetHeight/2-divFlyBar.style.width/2
原理:网页滚去的高度+(网页可见区域高/2)-(DIV的高度/2)
jeerisguo 2007-05-19
  • 打赏
  • 举报
回复
storm0(飘零雾雨.闻弦歌而知雅意,顾叶落而晓秋至)

是 就是浏览器居中
飘零雾雨 2007-05-19
  • 打赏
  • 举报
回复
楼主所要的仅是在浏览器中居中么?
jeerisguo 2007-05-19
  • 打赏
  • 举报
回复
就IE的这个问题是无法解决的??

飘零雾雨 2007-05-19
  • 打赏
  • 举报
回复
position: fixed;
这是相对窗口定位,不过ie暂不支持

61,124

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧