解決済みの質問
次のようなXHTMLを、IEで表示すると、問題ないのですが、
FireFox2やオペラで表示すると、○○○○○の部分にマウスを乗せると
赤く反転してしまいます。
なぜでしょうか?
test.html-----------------
<html lang="ja" xml:lang="ja" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<title>テスト</title>
<style type="text/css">
<!--
body
{
font-family:'MS 明朝','明朝','MS ゴシック';
background-color:#FFFFFF;
}
A:link,A:active,A:visited
{
text-decoration:underline;
color:#0000FF;
}
A:hover
{
text-decoration:underline;
color:#FF0000;
}
-->
</style>
</head>
<body>
<div align="left"> <b>(タイトル)</b></div>
<b>見出し1</b><a name="見出し1"/> ○○○○○○○○○(<a href="#">▲▲▲▲▲▲</a>××××××<br/>
</body>
</html>
投稿日時 - 2008-04-17 16:36:22
>自動的に、<a name="○○○" /> と変換されてしまいます。
<a name="見出し1">
に対する終了タグがないから、自動的にスラッシュが付くのではないですか?
<a href="#">▲▲▲▲▲▲
より前(例えば~○○○</a>(<a href="#">▲▲~)とつけて(終了して)いますか?
色が反転するのは、<a>要素のhover指定のせいでしょうね。
IE以外では<a>要素以外にもhover指定が可能なのを考えれば、ありうるかと。
a[name]:hover {color: inherit;}
xhtmlでname属性のアンカーって使えましたっけ?
http://www.xml.vc/hp/keitai/link-id1.html
投稿日時 - 2008-04-17 20:41:16
お礼
ありがとうございました。
xhtmlでname属性は使ってはいけなかったんですね。
XSLTを修正して、対応したいと思います。
投稿日時 - 2008-04-18 08:41:28
1人が「このQ&Aが役に立った」と投票しています
ベストアンサー以外の回答(1件中 1~1件目)
IEが手を抜いているだけだと思います。アンカーは空要素ではありませんから
<a name="見出し1"/> でなく、 <a name="見出し1"></a>
と書かないといけません。
投稿日時 - 2008-04-17 16:59:02
補足
そうなんですね。
ただ、環境を書くのを忘れたのですが、
XML→XHTMLの変換をしています。パーサは、MSXMLを使っているのですが、自動的に、<a name="○○○" /> と変換されてしまいます。
これは、何とかならないのでしょうか?
環境:WinXP(SP2)+IE7 or FireFox2 + MSXML
投稿日時 - 2008-04-17 17:16:48