关于DIV及层的几个问题

wcqgm 2006-03-24 10:52:26
现遇到如下几个问题,如题:
描述1:我在document中设计如下
<body>
<div id='aa' style="BACKGROUND-COLOR: white; HEIGHT: 800px; POSITION: absolute;WIDTH: 400px;Left:200px"><table><tr><td></td></tr></table></div>
div id='aa' style="BACKGROUND-COLOR: white; HEIGHT: 800px; POSITION: absolute;WIDTH: 400px;Left:200px"><table><tr><td></td></tr></table></div>
...</body>
主要是想让div 放在窗口的中间,且几个DIV 按次序往下排,
问题1;几个div重叠在一起。
  2.其中div和table都是动态创建增加到document中,但是新增后除了div在窗口中(原因div的背景色为白色,可见)table并不显示出来,但是通过打印或其他方式却发现document已经加入了。不知道为什么?(通过document.createElement创建和appendChild来加入)
问题解决马上给分。
分不够再加 谢谢!
...全文
186 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
patient 2006-03-25
  • 打赏
  • 举报
回复
真够晕的
livesylvia 2006-03-24
  • 打赏
  • 举报
回复
定义最外层的DIV,子DIV用POSITION: relative应该就可以了吧~!
wcqgm 2006-03-24
  • 打赏
  • 举报
回复
就是显示不出来,背景色加了,不行。用Z-INDEX也不行
themedy 2006-03-24
  • 打赏
  • 举报
回复
“不显示出来”是什么意思?是看不见吗?表格加个背景色看看
sky0120 2006-03-24
  • 打赏
  • 举报
回复
看看
是是非非 2006-03-24
  • 打赏
  • 举报
回复
但是通过打印或其他方式却发现document已经加入了

-------------------

看看是不是在其他的CSS中屏蔽了?
newskyline 2006-03-24
  • 打赏
  • 举报
回复
appendChild有时是有点问题,我也不太确定原因,以前我碰到此类问题时都是用innerHTML解决的。
jspadmin 2006-03-24
  • 打赏
  • 举报
回复
呵呵,非asp问题,不太熟悉。
但我猜会不会是你的div或table中的内容并没有正确取得,所以不显示div了?
wcqgm 2006-03-24
  • 打赏
  • 举报
回复
谢谢各位
div 中的table有数据,有好几行, 我是用XML取得的数据。
var creaObj = document.createElement;
var div = creaObj("<DIV ID='ViewDiv'style='BACKGROUND-COLOR:white; HEIGHT:"+(PageHeight-10) +"px;WIDTH:"+ (PageWidth-10)+"px;Left:200px;POSITION:relative;' ></DIV>")
var oTble = creaObj("<Table ID='ViewTable' border=1 width='"+PageWidth+"' class='HXTable'></TABLE>")

function CreateTr(objNode)
{
var oTr = creaObj("<TR></TR>");
var caption = ""
var oTd = "";
for(i=0;i<objNode.attributes.length;i++)
{
caption = objNode.attributes(i).text + " "
oTd = CreateTd(caption,i)
oTr.appendChild(oTd);
}
return oTr;
}
function CreateTd(Caption,Cell)
{
var align = "left";
var oTd = ""
if(HeadXml.childNodes[Cell].attributes(1).text=="number")
{
align="right";
}
oTd = creaObj("<TD align='"+align+"'></TD>");
oTd.innerText = Caption;
return oTd;
}
for(k=0;k<DataXml.childNodes.length;k++)
{
if(TempPageHeight<PageHeight)
{
oTr=CreateTr(DataXml.childNodes[k]);
oTable.appendChild(oTr);
}
}
oDiv.appendChild(oTable);
AllDiv.appendChild(oDiv);
大致就是这样,AllDiv 是我页面中的一个DIV,初始内容为空我用alert(AllDiv.outerHTML)可以显示出来所以有的数据。但是在页面上不显示,不知道为什么。谢谢各位
KimSoft 2006-03-24
  • 打赏
  • 举报
回复
<body>
<div id='aa' style="BACKGROUND-COLOR: #FF0000; HEIGHT: 80px; POSITION: absolute;WIDTH: 400px;Left:200px;top:0px;"><table border=1><tr><td></td></tr></table></div>
<div id='aa' style="BACKGROUND-COLOR: #0000FF; HEIGHT: 80px; POSITION: absolute;WIDTH: 400px;Left:200px;top:80px;"><table border=1><tr><td></td></tr></table></div>
<div id='aa' style="BACKGROUND-COLOR: #00FF00; HEIGHT: 80px; POSITION: absolute;WIDTH: 400px;Left:200px;top:160px;"><table border=1><tr><td></td></tr></table></div>
</body>



style里面加上个top,第一个top为0px,第二个为0 + 第一个div高度,依次类推
你的第二个div前面少了个"<"
  • 打赏
  • 举报
回复
试一下这样:
<style>
body {text-align:center;}
</style>
<body>
<div id='aa' style="BACKGROUND-COLOR: white; WIDTH: 400px;">
<table border=1><tr><td>asdfasdfasdfasdfasdf</td></tr></table>
</div>
<div id='bb' style="BACKGROUND-COLOR: white; WIDTH: 400px;">
<table border=1><tr><td>asdfasdfasdfasdfasdf</td></tr></table>
</div>
...
</body>

2.比如想在id=aa的div中加入table,应该是aa.appendChild(oTable)
或者直接用innerHTML这样效率更高据说
newskyline 2006-03-24
  • 打赏
  • 举报
回复
直接写代码是肯定可以显示的,我测试过,当然,如果你的表什么内容都没有你也看不到了。
你动态创建的代码是什么帖出来看看,是不是代码有什么问题。

━━━━━━━━━━━━━━━━━━━━━━━━━━
我的CSDN原则:无帖我回,有帖我优,优帖我避,强帖我顶!
━━━━━━━━━━━━━━━━━━━━━━━━━━
欢迎访问小天的维动世界 www.justrun.net

P.S. 帮我顶一把:
http://community.csdn.net/Expert/TopicView.asp?id=4620147
Thanks everybody!
wcqgm 2006-03-24
  • 打赏
  • 举报
回复
各位兄弟,帮忙看看。急呀。。。。。。。。。。。。。。。。。。。。。。。
wcqgm 2006-03-24
  • 打赏
  • 举报
回复
关键就是问题2,将其加入到div中,却不能显示。

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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