2012-06-14 96 views
0

我不太確定處理這種情況的最佳方法。這裏有一個假設的情況:當一個容器需要是一個可點擊的鏈接

<a href="/my-page/"> 
    <div style="width: 150px; height: 150px; background-image: url('images/myimage.jpg') 0 0 no-repeat; position: relative;"> 
     <div style="line-height: 50px; position: absolute; bottom: 0; left: 0;"> 
      <span>My Clickable Box</span> 
     </div> 
    </div> 
</a> 

所以在這種情況下,我有一個位於底部的實際文本另一個容器的容器......但我需要整個框點擊。

衆所周知,當您將錨標籤指定爲特定的高度或寬度時,錨標籤效果不佳......所以您幾乎依靠內部內容來做到這一點。

我不知道,我在這一個有點損失。

回答

3

如果您將其顯示更改爲blockinline-block,您可以調整它的大小,不需要使用其中我確信無效的div。

<a style="display:inline-block;width: 150px; height: 150px; background-image: url('images/myimage.jpg') 0 0 no-repeat; position: relative;" href="/my-page/"> 
    <span>My Clickable Box</span> 
</a> 
+0

是的,這就是我上面提到的...錨標籤內的div是「不」......不知道爲什麼。 – dcolumbus

+0

您不能在內聯元素(a)中包含塊元素(div) – Musa

0

您可以將需要點擊的div放置在錨標記內,並在div上設置大小。整個div將在鏈接內部可點擊。

+0

是的,不過,是不是使用錨作爲主要元素的問題? – dcolumbus

+0

不明白爲什麼會這樣。如果你重置瀏覽器的默認CSS,你應該能夠完全控制它的顯示方式。我認爲這是更糟糕的形式問題,而不是無法完成的事情。 – BlackSpy

+0

再看看你的html,我能看到的唯一真正的問題是位置:絕對的div。如果你使用這個定位,你只需要嵌套一些div - 所以

BlackSpy

0

您可以像設置div一樣設計錨點的位置,然後整個區域都可以點擊。例如。

<a href="/my-page/" style="width: 150px; height: 150px; background-image: url('images/myimage.jpg') 0 0 no-repeat; position: relative; line-height: 50px; position: absolute; bottom: 0; left: 0;">My Clickable Box 

+1

錨標記不能正確響應高度和寬度。 – dcolumbus

+0

@dcolumbus,他們這樣做。錨標籤可以像其他元素一樣大小。唯一的區別是錨定標記最初顯示爲內嵌元素。您必須將它們顯示爲塊或linline-block才能調整它們的大小 – itd

相關問題