لماذا لا يتم التحقق من صحة مستندي باعتباره XHTML 1.1 STRICT؟

StackOverflow https://stackoverflow.com/questions/1914143

سؤال

بينما تم إهمال الهدف = "_blank"، لماذا لا يعطي مدقق W3C خطأً حول هذا الأمر؟يمكنك لصق هذا الرمز والتحقق منه في ملف مدقق:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<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>

يحرر:

هل يعني ذلك أن XHTML 1.1 يدعم الهدف=”_blank”، لكن XHTML 1.0 الصارم لا يدعم ذلك؟أم أنه خطأ في مدقق W3C؟

هل كانت مفيدة؟

المحلول

يتم التحقق من صحة xhtml انتقالي عوضا عن حازم. وبعد إذا قمت بتجاوز DocTyPe يدويا إلى XHTML 1.0 صارمة تحصل على هذا الخطأ:

خط الخطأ 11، العمود 76: سمة "الهدف" موجود، ولكن لا يمكن استخدامه لهذا العنصر.

... OM "العنوان =" نافذة جديدة سوف تفتح "الهدف =" _ فارغة "> ارتباط يفتح في نافذة جديدة

استخدم هذا DocType إذا كنت تريد أن تكون صارما:

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

لا تزال المخططات الانتقالية تسمح ببعض العناصر المهملة والسمات، أعتقد أن مساعدة الناس انتقال في خطوات نحو وضع علامة أكثر صرامة.

تعديل:

حسنا، لذلك كان الرمز الأصلي XHTML 1.1 منها هناك نسخة واحدة فقط (لا يوجد صارم / انتقالي)، وفقا هذه الأسئلة الشائعة السمة المستهدفة غير مسموح بها بالفعل. لذلك أعتقد أن هذا يجب أن يكون خطأ في المدقق.

نصائح أخرى

يتم إهمالها ولكنها غير إزالتها. لهذا السبب أعتقد أن هناك مشكلة في التحقق من ذلك.

ال XHTML1.1 الوثائق يدل على أن السمة الهدف ل a يمكن أن يكون العنصر "أي شيء".

هل يعني ذلك XHTML 1.1 دعم الدعم = "_ فارغة" ولكن XHTML 1.0 صارمة لا؟

نعم.

إذا كنت بحاجة إلى حل عبارة عن مشكلتك، فهذا هو واحد منهم. خيار آخر هو استخدام window.open () بدلا من الهدف = "_ فارغة".

لقد استخدمت الكود الخاص بك وحصلت على الخطأ التالي.

تم العثور على خطأ أثناء التحقق من هذا المستند كـ XHTML 1.1!

مخرجات التحقق:1 خطأ

  1. سطر الخطأ 11، العمود 76:لا توجد سمة "الهدف"

    ….com" title="سيتم فتح نافذة جديدة" target="_blank">يفتح الرابط في نافذة جديدة

المدقق يعمل اعتبارا من 30/1/2012.لا يمكنك اجتياز التحقق من الصحة باستخدام target="_blank"

استبدل بهذا الجزء الصالح من الكود:

onclick="target='_blank';"

في حين أن XHTML قد يدعم "Targrt =" _ فارغة "، فلن يتحقق من صحة ذلك لأنه تم استهلاكه. إذا كنت لا ترغب في استخدام JS، فسيتعين عليك استخدام انتقالي بدلا من صارمة في" نوع المستند "الخاص بك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top