css 如何用bottom来定位

来源:百度知道 编辑:UC知道 时间:2024/05/29 04:15:01
我想用JavaScript来控制一个div的位置,但有时需要通过top来定位,有时要用bottom来定位,比如
if(a==1){
div1.style.display="block";
div1.style.top=60;
}
if(a==2){
div1.style.display="block";
div1.style.bottom=20;
}
但是当a=1时用过top定位后,以后当a=2时需要用bottom来定位时就不好使了
因为top的值一直存在,所以覆盖了bottom定义的了
请问有什么办法取消top的值吗
我在a=2时设置为auto后,则top就显示在最上面了,应该是0,bottom的设置还是没起作用,
值可以设置成功,只是不显示在相应位置

语法: bottom : auto | length
取值: auto :  默认值。
无特殊定位,根据HTML定位规则在文档流中分配
length :  由浮点数字和单位标识符组成的长度值 | 百分数。必须定义 position 属性值为 absolute 或者 relative 此取值方可生效。
说明:检索或设置对象与其最近一个具有定位设置的父对象底边相关的位置。此属性仅仅在对象的定位( position )属性被设置时可用。否则,此属性设置会被忽略。此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。对应的脚本特性为 bottom 。其值为一字符串,所以不可用于脚本(scripts)中的计算。请使用 style 对象的 posBottom , pixelBottom 等运行时特性。
示例: div { position: absolute; bottom: 1in; } div { position:relative; bottom:6px; }

重新定义一次top就好!

你在
if(a==2){
div1.style.display="block";
div1.style.bottom=20;
}
设置top为auto不就可以了吗!

div1.style.bottom=20;分号是中文的改成div1.style.bottom=20;试试呢