it-swarm.asia

التحقق من صحة HTML: هل هو يستحق كل هذا العناء؟

ما هي مزايا وعيوب (إن وجدت) من التأكد من أن جميع الصفحات التحقق من صحة مقارنة وجود HTML غير صالح الذي يعمل على جميع المتصفحات الرئيسية؟

أيضًا ، هل وجود HTML صالح بعد تنفيذ Javascript بنفس القدر من الأهمية؟

52
Thomas Bonini

أعتقد أنه بالتأكيد يستحق القيام به ، لكن يجب ألا تكون عبداً للتحقق من الصحة - إنها لعبة أحمق.

http://www.codinghorror.com/blog/2009/03/html-validation-does-it-matter.html

  1. التحقق من صحة HTML الخاص بك. تعرف معنى أن يكون لديك علامة HTML صالحة. فهم الأدوات. مزيد من المعلومات هي دائما أفضل من أقل المعلومات. لماذا يطير أعمى؟

  2. لا أحد يهتم إذا كان HTML الخاص بك صحيحًا. إلا أنت. إذا كنت تريد. لا تفكر لثانية واحدة في أن إنتاج HTML صحيح تمامًا هو أكثر أهمية من تشغيل موقع الويب الخاص بك ، أو تقديم ميزات تسعد المستخدمين ، أو تنجز المهمة.

42
Jeff Atwood

أنا أعتبر HTML صالح هدفًا مفيدًا ، لكن لا أراه على أنه الهدف النهائي لبناء مواقع جيدة.

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

في ملاحظة أخرى ، إذا كنت تستخدم نصوصًا إعلانية أو نصية خارجية ، فيجوز لها إدراج علاماتها الخاصة التي لديها فرصة للتعبير عن حقك.

32
Grant Palin

أعتقد أن الأمر يستحق كل هذا العناء ، حيث أنني اشتعلت العديد من أخطاء العلامات والمنطق بالسعي إلى التحقق من الصحة. انها واحدة من تلك الأشياء "الضرورية ولكن غير كافية". تعتبر العلامات الصالحة ، مثل التعليمات البرمجية التي تجمع (أو تسحب عبر JSlint) خالية من الأخطاء والتحذيرات والتلميحات ، خطوة أولى جيدة في تصحيحها.

22
Alan

الإضافة الكبيرة لـ HTML الصالحة هي أن صفحتك يمكن الوصول إليها بعد ذلك بأشياء أخرى غير "المتصفحات الرئيسية". جميع "المتصفحات الرئيسية" لديها حلول لا نهاية لها للتعامل مع جميع غير المرغوب فيه غير صالح الذي يملأ WWW. ومع ذلك ، فإن الالتزام بـ HTML صالح يساعد ، على سبيل المثال ، إذا كان شخص ما يستخدم متصفحًا لضعاف البصر ، أو الوصول إلى صفحاتك دون اتصال بالإنترنت ، إلخ.

9
delete

التحقق من الصحة في حد ذاته ليس بالغ الأهمية ، حيث أن عددًا قليلاً من المتصفحات متوافق بنسبة 100٪ والمواصفات غير واضحة بنسبة 100٪ حول كيفية تفسير القواعد.

ومع ذلك ، يجعلك HTML صالحًا في وضع أفضل للتكيف مع موقعك وتحسينه. مع تقدم المعايير ، سيتم ترحيلها للأمام ، وإذا كان الموقع الجديد صالحًا ، فسيكون التحديث لدعم آخر شيء أسهل.

القاع ، كونه صالحًا يجعل من السهل البقاء على رأس اللعبة وأن يكون متوافقًا مع أكبر عدد ممكن من الجمهور.

8
MrChrister

أفضل طريقة هي معرفة أي HTML غير صالح سيئ ، وأي HTML غير صالح لا يهم.

على سبيل المثال ، نسيان إغلاق علامة <div> هي سيئة للغاية ، لأن التخطيط الخاص بك سوف يكاد يكون مؤكدًا في متصفح واحد أو أكثر.

ومع ذلك ، لا يهم استخدام <br> بدلاً من <br /> في XHTML - كل المتصفحات ستفسر على حد سواء كسطر بدون مشاكل. يعد استخدام السمة target في الارتباطات غير صالح ، ولكن السيناريو الأسوأ هو أن المستعرض لا يفتح الرابط في نافذة جديدة.

4
DisgruntledGoat

أحد أسباب اختبار موقعك للتحقق من صحة HTML هو أنه يضمن أن العناكب في محرك البحث ستكون قادرة على فهرسة وتحديد صفحات صفحاتك بشكل كامل. إذا لم يتمكنوا من القيام بذلك بسبب HTML غير صحيح (والذي قد تعمل فيه المتصفحات الرئيسية لأسباب تاريخية) ، فمن المحتمل أن تحد من تصنيفات محرك البحث الخاص بك.

كما كانت هناك تكهنات بأنه بينما تقوم محركات البحث الرئيسية بعمل جيد في التعامل مع HTML المشوه ، فإنها قد تقوم أيضًا بتعيين "نقاط" لجودة الصفحة للتأكد من صحتها ، مما يؤثر بشكل أكبر على قدرتك على التصنيف بأعلى مستوى يستحقه المحتوى الخاص بك.

3
JasonBirch

أنا حقا لا أعتقد أن الأمر مهم بعد الآن. اعتدت أن أكون عبدا للتحقق من صحة ، والآن أنا نادرا ما تحقق من ذلك. ربما تم إحراقي من التأكد من أن موقعي صالح ، أو ربما لم أهتم بعد الآن لأن لا أحد آخر سيفعل ذلك. أستطيع أن أضمن 99.9 ٪ من زوارنا لا يعرفون حتى ما هو عليه ، وحتى الرعاية إذا كانوا كذلك. قد يكون برنامج المستعرض في المستقبل ، ولكن عندما يأتي ذلك اليوم ، سأقلق بشأنه في ذلك الوقت.

3
Ben

عند تشغيل أداة التحقق ، ستحتاج إلى فحص الأخطاء التي يوفرها لك كل حالة على حدة. هل التحقق من الصحة مهم؟ بالنسبة لي ، نعم ، هذا مهم للغاية. ولكن هل هو شرط؟ لا.

أشياء مثل استخدام المعرف نفسه عدة مرات (بدلاً من فئة) ، ووضع عناصر مستوى الكتلة داخل عناصر المستوى المضمنة (عادةً لا تتناسب هذه العناصر بهذه الطريقة أيضًا) ، وتفتقد سمات alt على الصور (ضعف إمكانية الوصول للمعاقين ) ، كلها مهمة. أشياء مثل سمات غير معروفة على العلامات هي ليس مهم. على الاطلاق. تستخدم أطر جافا سكريبت مثل Dojo أو شريط الوسائط الاجتماعية المرعب Meebo ، سمات مخصصة مثل السنانير ، وتنص مواصفات HTML على أنه مسموح بها ، وأن يتم تجاهل أي سمة غير معروفة. المدقق لا يتجاهلهم ، ومع ذلك ، فإنه يلقي الأخطاء. يمكن تجاهل هذه الأخطاء.

عند التحقق من الصحة ، لا تفترض أنه إذا كان لديك أخطاء ، فأنت تفعل ذلك بطريقة خاطئة. الدلالات أكثر أهمية إلى حد كبير ، ويحدث أن يكون HTML الصحيح في أغلب الأحيان نتيجة طبيعية لوجود دلالات مناسبة.

3
Bryson

هناك نقطة لم يشر إليها أحد حتى الآن وهي أن HTML غير صالح يمكن أن يسبب أوقات عرض أبطأ بينما يحاول المستعرض فهم HTML غير القياسي عند العرض.

2
BradB

التحقق من الصحة مفيد لأنه يمكن أن يساعدك في اكتشاف بعض الأخطاء التي يصعب صيدها مثل

<input name=foo value=<?php echo htmlspecialchars($_GET['foo']); ?> />

أو سلوك متصفح لا يمكن التنبؤ به (على سبيل المثال ، وضع عناصر الكتلة في a يمكن في بعض الأحيان كسر الطرق القبيحة في Firefox).

2
Tgr

يمكن أن تتسبب بعض أخطاء التحقق من صحة HTML في مشاكل تخطيط غير واضحة (مثل العلامات المتداخلة/غير المغلقة بشكل خاطئ) ، أخطاء JavaScript (على سبيل المثال استخدام id أكثر من مرة واحدة) ، ومشكلات لبعض المستخدمين (على سبيل المثال لا تشمل سمة alt ذات معنى أو فارغة على الصور) .

إذا تم التحقق من صحة جميع صفحاتنا ، فهذا تحقق تلقائي لطيف يمكنك القيام به لاستبعاد مصادر الأخطاء. إذا تركت بعض أخطاء التحقق من الصحة لأنك تعلم أنها لا تتسبب في أي ضرر ، فلم يعد التحقق تلقائيًا: يجب عليك النظر في كل خطأ وتذكر أنه على ما يرام. أنا شخصياً أفضل ذلك عندما تقلل أجهزة الكمبيوتر من مقدار العمل الذي يجب علي القيام به بدلاً من زيادته.

1
Paul D. Waite

نقطة واحدة لا أحد المذكورة هو تطورات المتصفح في المستقبل. على الرغم من أن جميع متصفحات اليوم تتعامل مع العلامات غير الصحيحة بشكل جيد نسبيًا ، فقد لا يكون هذا هو الحال دائمًا.

سوف يضمن صانعو المستعرضات في المستقبل أن تعمل مستعرضاتهم وفقًا لمعايير HTML/XHTML ، لذلك هذا هو ما يجب أن يصل إليه مطورو الويب. فقط لأن القليل من أعمال الترميز غير الصالحة الآن لا يضمن أنها ستعمل في المتصفحات المستقبلية.

1
Loftx

يساعدك الصلاحية على تجنب عدم التوافق ويساعد في الحفاظ على التعليمات البرمجية. تتعافى المتصفحات من أخطاء العلامات ، ولكن في بعض الأحيان بطرق غير بديهية للغاية.


  • يستند إلى DTD (HTML4 ، XHTML1 @ W3C) - قد لا يستحق كل هذا العناء. DTD بدائية ، على سبيل المثال ، لا يمكن التحقق من صلاحية معظم السمات. ستصعب في الغالب فهم الأخطاء المتعلقة بالكيانات والتعشيش.

  • HTML5 Validator - Yes . قطعا. HTML5 أكثر واقعية ويسمح ببعض التركيبات غير الضارة التي كانت أخطاء. مدقق OTOH Henri أكثر شمولية وأفضل في اكتشاف المشكلات الحقيقية.


قد تكون صلاحية التعليمات البرمجية المنشأة من JS مهمة ، حيث تعمل المتصفحات على DOM ، بغض النظر عن كيفية إنشائها. إذا كنت تستخدم document.write() ، فيجب عليك أيضًا الحذر من الحصول على بناء جملة صحيح (يمر عبر نفس المحلل اللغوي كمصدر للصفحة).

1
Kornel

حتى إذا كان HTML يعمل على جميع المتصفحات الرئيسية ، فلا يزال الأمر يستحق القيام به لأنه في بعض الأحيان يمكن أن يسبب مشاكل مع برامج زحف محركات البحث مثل googlebot. على سبيل المثال انظر هذا:

http://www.codeproject.com/KB/server-management/Google_Indexing_Problem.aspx

1
Mee

ليس هناك عيب وجود أتش تي أم أل صالحة. هناك سبب لوجود المواصفات في المقام الأول ولماذا يتم بذل الكثير من الجهد في المواصفات لتحديد كيفية عمل الأشياء.

في الأساس ، كل ما تكسبه هو تلبية المواصفات. وهذا بدوره يعني أن البرامج المكتوبة لقراءة html (المتصفحات والروبوتات) لا يمكن أن تلومك لعدم استيفاء المواصفات إذا حدث خطأ ما. وبعض هذه البرامج تمنحك نقاطًا خارجية (ترتيب أعلى في محركات البحث إذا كان الروبوت يشير إلى "المواصفات"). إذا استوفيت المواصفات ، فستفاجأ كثيرًا إذا لم تظهر بعض المتصفحات على html كما تعتقد.

لذلك ، لتلبية المواصفات وكتابة أتش تي أم أل صالح هو جيد بالنسبة لك ، لا عيوب على الإطلاق.

1
akira

لا تستخدم Google و Bing ولن تقوم مطلقًا باستخدام التحقق من صحة CSS أو HTML كعامل تصنيف.

تحتوي غالبية مواقع الويب على عشرات إلى مئات الأخطاء ، ولا داعي للقلق بشأنها لأن جميع محركات البحث تهتم بكيفية ظهور الصفحة. فقط تأكد من عرض موقعك الإلكتروني بشكل صحيح في جميع المتصفحات الرئيسية و إحضار Google .

0
Simon Hayter