2009-06-02 55 views
1

我的最后一个问题是inmediatly回答..我决定发布一个新的,其正在我的头发了,XD获得高度绝对模式来定位一个div

这是问题..

我有一个绝对定位的分区设计..它有一个透明PNG和一个简单的锚点...就像这样。

<div class="buyfloat"> 
     <img src="img/buy.png" /> 
</div> 

所以..我需要这个div.buyfloat定位在绝对位置......不走动..没有跳不褪色..我只需要它在为200px从页面的最下方.. 。因为我需要它只是在我的页脚的顶部..随着页面的高度增加或减少..我不能使用顶部选择器。

好..“使用底部!”你可能会说..是的先生我试过..但由于某种原因..底部选择器使用窗口高度(可见部分),而不是整个事情..和..如果我向下滚动页面..图像是正好在页面中间。

.buyfloat{ 
    width:333px; 
    height:135px; 
    position:absolute; 
    left:10px; 
    bottom:200px; /** not working   **/ 
    margin:5px auto 0 auto; 
    z-index:99; 
} 

我在找一些JavaScript(我想我看到了一个以前的某个时候),让我的身高正确的CSS ..但如果你有任何不同,更容易的解决方案..我所有耳朵!

在此先感谢。

回答

3

请记住,“position:absolute”实际上是相对于具有非“static”位置值的元素的第一个祖先(请参阅http://www.w3.org/TR/CSS2/visudet.html#containing-block-details中的第4点)。所以也许你有这种情况,而“底部”是从其他元素而不是HTML/body进行度量。

+0

这是不是“静态”(不,我所知道的任何元素的位置值在任何浏览器不使用,作为默认) – Quentin 2009-06-02 16:26:31

2

首先,JS在CSS中工作的唯一方法是通过仅用于IE的“表达式”,其次这将需要您的用户也打开JS。

pos:abs从正常布局中删除该元素,并将其与最近的绝对父亲或相对父亲放在一起。如果严格或过渡XHTML是,底部绝对会工作,如果你只是让身体相对过于:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
    <head> 
     <style> 
     body {height: 9000px;position:relative;} 
     #a {position:absolute; bottom:0px;} 
     </style> 
    </head> 
    <body> 
    <div id="a">bottomDweller</div> 
    </body> 
</html> 
相关问题