2012-05-18 76 views
1

下面的HTML將只能在IE中使用,但不能在Firefox中使用。任何人都能看到爲什麼謝謝<a>標籤將無法在Firefox中工作,只有在IE瀏覽器

<a href="../homepage.aspx" id="aHomepage"> 
         <td id="myHeader_td0_a" class="Tab_White" width="61" align="center" valign="middle">Home</td> 

        </a> 
+3

我明白了爲什麼。這是非常無效的HTML。 – alex

+3

感謝您的建設性批評,並試圖幫助我解決繼承的混亂。 – njj56

回答

3

<a>放在您的表格單元格內。

<td id="myHeader_td0_a" class="Tab_White" width="61" align="center" valign="middle"><a href="../homepage.aspx" id="aHomepage">Home</a></td> 

如果你想整個小區是一個鏈接使用CSS使<a>填充單元格或使用JavaScript,使一個onclick事件的全細胞響應。

+0

這是有效的,但問題是我想讓該類影響文本 - 類由後面的vb代碼更改,具體取決於選擇哪個頁面。當以這種方式這樣做時,css類不會將其更改應用於鏈接文本。 – njj56

+0

@ njj56-你正試圖申請什麼css? – scrappedcola

+0

我正在研究甚至創建一個onclick,但問題是我使用下面的代碼來獲取href的引導部分:<%=Depth%> - 我需要能夠從調用這個頁面的深度(這是一個頭) - 但不知道如何去做。 – njj56

0

它在FF中不起作用,因爲這是糟糕的標記。千萬不要用錨來包裝TD。瀏覽器會嘗試儘可能最好地解釋你的html。你很幸運,IE這次決定玩得很好。相反,這樣做:

<td id="myHeader_td0_a" class="Tab_White" width="61" align="center" valign="middle"> 
    <a href="../homepage.aspx" id="aHomepage">Home</a> 
    </td> 

爲了使錨<TD>使用的大小一些CSS是這樣的:

td a{ 
    display:inline-block; 
    height: 100%; 
    width: 100%; 
} 

錨內聯元素,不具有高度。爲了使它的高度使它display: inline-block,所以它保持內聯,但像塊級元素一樣尊重heightwidth

編輯:傳遞一個深度的變量是設置在錨屬性,並獲得以單擊事件的 方式一:

<a href="../homepage.aspx" id="aHomepage" depth='100'>Home</a> 

然後你可以用js得到的值(大致是這樣的的方式,我不知道你的事件是如何設置):

$("a").click(function(){ 
    this.getAttribute("depth"); 
}); 

對不起,我沒有VB代碼,將其添加到錨。

+0

@ njj56:你的代碼在哪裏放置類指示你想要的文本樣式?如果是在TD上,你可以通過添加.Tab_White a {/ *這裏的樣式* /} – scrappedcola

+0

稍微改變你的css。對不起,不確定你正在詢問這個評論。 - 我可以使用上面說明的代碼,但我需要找到一種方式來設置鏈接的樣式,具體取決於哪個頁面被擊中 - 目前在代碼隱藏中,我使用類似下面的內容來改變樣式,但是我不能因爲我不能使用runat =「server」兩次 - __ If Section = 0 Then td0_a.Attributes.Add(「lock」,「true」) td0_a.Attributes.Add(「class」,「 Tab_Blue「) End If – njj56

+0

試圖使用嵌入的代碼塊來設置TD中的屬性,如果是這樣,從onclick我可以調用JavaScript函數,然後使用函數中的get屬性拉這個。 – njj56

相關問題