0

更新 :この問題の JS Fiddle : http://jsfiddle.net/Ey4aH/2/、IE で実行して問題を確認してください。

メニューのセットの一部である以下のコードを使用しています。

<div class="profile-menu">
              <ul>
                <li><a class="current" href="javascript:void('0');">
                  <table width="153" border="0" cellspacing="0" cellpadding="0">
                  <tr>
                      <td width="22"><img src="images/about-icon.png" width="16" height="16" /></td>
                      <td width="135">About</td>
                    </tr>
                </table>
                  </a> </li>
                <li><a href="/friend/viewfriends/<%=temp.getString("user_id")%>">
                  <div><table width="153" border="0" cellspacing="0" cellpadding="0">
                  <tr>
                      <td width="22"><img src="images/friends-icon.png" width="16" height="16" /></td>
                      <td width="135">Friends</td>
                    </tr>
                </table></div>
                </a>
                </li></ul></div>

これは他のブラウザでは正常に動作しますが、IE で [フレンド] テキスト リンクをクリックしようとすると動作しません。しかし、アイコンをクリックすると、正常に動作します。誰でも私が問題を見つけるのを手伝ってくれますか?

4

2 に答える 2

1

<a>tag内で table を使用しない方がよいでしょう。
ただし、各要素<a>内でタグを使用します。<td>

于 2012-11-20T11:01:09.383 に答える
1

テーブルは表形式のデータを表示するためだけに使用されるはずなのに、コンテンツを表示するためにテーブルを使用しているように見えます。

「A」タグにテーブルやその他のブロック レベルの要素を含めることはできず、すべてのブラウザーで適切に機能することが期待されます。

最善の解決策は、テーブルを使用せずに設計を再作成することです。

または、javascript を使用してテーブルでクリックを有効にすることで、目的を達成することもできます。

HTML5 では、ブロック レベルの要素を「a」タグで囲むことができます。

http://davidwalsh.name/html5-elements-links

于 2012-11-20T11:04:25.977 に答える