1

これを適切に行う方法に興味があります。

w3 htmlバリデーターを介して作業中のページを実行しましたが、1つのエラーメッセージが表示されました

行47、列54:属性 "target"は存在しますが、この要素には使用できません。**

<ul><li><a href="./jobops/1000 Design PM.pdf" target="blank">1000 Design PM</a></li>

ドキュメントで上記の属性を使用しましたが、使用しているドキュメントタイプは、この要素のその属性をサポートしていません。このエラーは、フレームを使用するドキュメントでの「厳密な」ドキュメントタイプの誤った使用(たとえば、「ターゲット」属性を取得するには「トランジショナル」ドキュメントタイプを使用する必要がある)、または「 marginheight」(これは通常、CSSを使用して修正され、代わりに目的の効果を実現します)。

リンクで新しいウィンドウを開くことができますが、ターゲットタグを使用しない方法についてのアイデアはありますか?

4

7 に答える 7

4

JavaScript を使用して新しいウィンドウを開くことができます。これにより、最新の HTML でターゲットが無効になる問題を回避できます。

ただし、これは、新しいウィンドウについて警告する (またはウィンドウが開かないようにする) ために人々が用意しているさまざまなシステムをバイパスするため、 target 属性を使用する (およびそれを許可する Doctype に切り替える) 方がよいでしょう。

新しいウィンドウがいつ必要になるかは、ユーザーに任せたほうがよいでしょう。煩わしい要因は別として、アクセシビリティの問題が発生します。

于 2009-09-04T14:37:46.400 に答える
3
target="_blank"

'target'属性が非推奨になっているため、strictを検証しません。

代わりに、前述のonclick回避策と同様の方法を試してください。ただし、そこにも「_blank」は必要ありません。単に:

<a href="./jobops/1000 Design PM.pdf" onclick="window.open(this.href); return false;">1000 Design PM</a>

動作します。「ターゲット」が非推奨になった理由は、HTMLを使用してデータをセマンティックにマークアップするのに対し、ターゲット属性はJavaScriptの目的である動作を提供していたためです。

ユーザーがJavaScriptをオフにしている場合、URLは同じウィンドウで開くだけです。

于 2009-09-04T15:05:27.057 に答える
1

じゃないかな…

target="_blank"

とにかく... JavaScriptを使用して新しいウィンドウを開くことはできますが、それでは単純なブラウジングの美しさが損なわれます. Lynx などを使用してブラウジングしている場合はどうなりますか?

于 2009-09-04T14:29:11.423 に答える
1

このtarget属性は、HTML 4 と XHTML 1.0、および XHTML 1.1 の Strict バリアントの一部ではありません。

そのため、JavaScript を使用した回避策を使用する必要があります。

<a href="./jobops/1000 Design PM.pdf" class="_blank">1000 Design PM</a>

var aElems = document.getElementsByTagName("a");
for (var i=0, n=aElems.length; i<n; ++i) {
    if (/(?:^|\s+)_blank(?:\s+|$)/.test(aElems[i].className)) {
        aElems[i].onclick = function() {
            return !window.open(this.href, "_blank");
        }
    }
}

または (将来) CSS 3 ( Hyperlink Presentation Moduleを参照):

a._blank {
    target: new;
}
于 2009-09-04T14:47:46.430 に答える
1

W3C によると、"target" 属性は HTML 5 では廃止されていないようです。

a 要素と area 要素の target 属性は、iframe と組み合わせて使用​​するなど、Web アプリケーションで役立つため、非推奨ではなくなりました。

http://www.w3.org/TR/html5-diff/

于 2011-11-11T00:51:39.090 に答える
0

使用:

target="_blank"

厳密な XHTML 検証メソッドを破ります。回避策を詳述したドキュメントは次のとおりです

于 2009-09-04T14:39:28.380 に答える
0

target="_blank" (決して検証しない) の代わりに、次のような JavaScript を使用できます。

<a onclick='window.open("./jobops/1000 Design PM.pdf", "_blank");return false;' href="./jobops/1000 Design PM.pdf">1000 Design PM</a>

次に、リンクが新しいウィンドウで開き、ページが検証されます。

Javascript を有効にしていないユーザー (全ユーザーの約 2% に過ぎませんが) でも、この方法でリンクをたどることができます。男はコメントに良い点を持っています:)

皆様良い週末を…

于 2009-09-04T14:43:35.173 に答える