views:

899

answers:

5

While target="_blank" is deprecated but, why W3C validator not giving ant error about this .you can paste and check this code validator?

http://validator.w3.org/#validate_by_input

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"&gt;
<html xmlns="http://www.w3.org/1999/xhtml"&gt;
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>

<p>
<a href="http://www.stackoverflow.com" title="New window will open" target="_blank">Link opens in new window</a>
</p>
</body>
</html>

Edit:

Does it means XHTML 1.1 support target=”_blank” but XHTML 1.0 strict not? or It's a bug in W3C validator?

+2  A: 

You are being validated as XHTML Transitional rather than Strict. If you manually override the doctype to XHTML 1.0 Strict you get this error:

Error Line 11, Column 76: Attribute "target" exists, but can not be used for this element.

…om" title="New window will open" target="_blank">Link opens in new window

Use this doctype if you want to be strict:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;

The transitional schemas still allow certain deprecated elements and attributes, I guess to help people transition in steps towards a stricter markup.

EDIT:

OK, so the original code was XHTML 1.1 of which there is just one single version (no Strict/Transitional), and according this FAQ the target attribute is indeed not allowed. So I guess this must be a bug in the validator.

Mike Weller
what about xhtml 1.1?
metal-gear-solid
Is it really a bug in w3c validator
metal-gear-solid
+2  A: 

It is deprecated but not removed. That's why i think there is problem in validating that.

Sarfraz
+2  A: 

The XHTML1.1 documentation shows that the target attribute of an a element can be "anything".

klausbyskov
it means XHTML 1.1 support target=”_blank”?
metal-gear-solid
As far as I can tell, yes.
klausbyskov
+2  A: 

Does it means XHTML 1.1 support target=”_blank” but XHTML 1.0 strict not?

Well, Yes.

If you need a workaround for your problem, then this is one of them. Another option is to use window.open() instead of target="_blank".

Faruz
but if i'm working with XHTML 1.1 then can i use target=”_blank”?
metal-gear-solid
obviously .. you can ..
infant programmer
A: 

While xhtml may support "targrt="_blank", it WILL NOT validate it because it hase been depreciated. If you don't want to use JS, you will have to use transitional instead of strict in your "document type".

Conrad