2011-06-27 20 views
2

我知道這可能是令人難以接受的,但客戶想要裹在一個標籤文字直播....當我在<a>標籤中包裝內容時,該鏈接在IE中不起作用,有幫助嗎?

所以,這裏是我的困境:

我有一些像這樣的代碼:

<a href="google.com"> 
    <img src="img.jpg" style="float:left;"> 
    <div style="float:right;"> 
     <h3>Title</h3> 
     <p>Description</p> 
    </div> 
    <div style="clear:both;"></div> 
</a> 

我稱之爲顯示:塊。

這種方法在FF5中效果很好,IE =並非所有內容都是可點擊的,在這個例子中只有圖片是可點擊的。 Chrome =有效。 Safari =有效。

如果你有不同的方法,你可能會建議請提供它。

在此先感謝!

+0

如果這是

+0

殺死每個IE用戶?這是一個可行的選擇? –

+0

儘管有人說你不能做你正在做的事情,但它在HTML5中有效,但不是HTML4和IE,而不是現代瀏覽器,如果沒有任何幫助,根本無法做到。 – Rob

回答

1

你可以嘗試使<a><div>和使用JavaScript & CSS來使它看起來&工作像一個鏈接

<div onclick="document.location.href='http://www.google.com'" style="cursor:pointer"> 
    <img src="img.jpg" style="float:left;"> 
    <div style="float:right;"> 
     <h3>Title</h3> 
     <p>Description</p> 
    </div> 
    <div style="clear:both;"></div> 
</div> 
+0

這將是最快捷的解決方案,因爲除了錨之外,您不必更改任何內容。 – scrappedcola

0

在HTML 4,塊級元素在<a>代碼所允許的,所以我不會期望它能夠跨瀏覽器工作。

更好的解決方案可能是使用Javascript onclick事件將用戶發送到預定的目的地。

<div id="clickable_div" onclick="document.location.href='http://google.com'"> 
    <img src="img.jpg" style="float:left;"> 
    <div style="float:right;"> 
     <h3>Title</h3> 
     <p>Description</p> 
    </div> 
    <div style="clear:both;"></div> 
</div> 
0

這完全是針對html specification因爲<a>元件只能包含inline elements<div>block element。所以,它不適用於Internet Explorer並不奇怪。事實上,它可能不適用於其他許多瀏覽器,即使在那些能夠正常工作的瀏覽器中,也無法保證它可以繼續工作。

我能想到的唯一解決方法涉及的JavaScript,像這樣:

<div onClick="javascript:window.open('google.com')"> 
    <img src="img.jpg" style="float:left;"> 
    <div style="float:right;"> 
     <h3>Title</h3> 
     <p>Description</p> 
    </div> 
    <div style="clear:both;"></div> 
</div> 

然而,這將打破沒有JavaScript或有它禁用用戶的支持。

+1

*'完全反對'*對單詞的選擇過於強烈......除了另一個「」元素,HTML5允許您在*任何內容*周圍包裝''元素。 –

相關問題