HTML 5 - الاعتماد المبكر قدر الإمكان - جيدة أو سيئة ؟

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

سؤال

كان هذا السؤال من وحي قليلا قبل هذا السؤال, في معظم upvoted الجواب ينصح باستخدام ميزة من HTML 5.هذا يبدو بالتأكيد أن يكون طريقة جيدة بالنسبة لي ، ولكن جعلني غريبة عن استخدام ميزات من المستقبل المواصفات بشكل عام.

HTML 5 يقدم الكثير من التحسينات لطيفة, والتي يمكن استخدامها دون أن تسبب مشاكل في المتصفحات الحالية.

بعض الأمثلة:

// new, simple HTML5 doctype (puts browsers in standards mode)
<!doctype HTML>

// new input types,  for easy, generic client side validation
<input type="email" name="emailAddress"/>
<input type="number" name="userid"/>
<input type="date" name="dateOfBirth"/>

// new "required" attribute indicates that a field is required
<input type="text" name="userName" required="true"/>

// new 'data-' prefixed attributes
// for easy insertion of js-accessible metadata in dynamic pages
<div data-price="33.23"> 
    <!-- -->
</div>
<button data-item-id="93024">Add Item</button>

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

حاليا لا كسر أي شيء (بقدر ما أستطيع أن أقول) في المتصفحات الحالية وأنها تسمح نظيفة عامة clientside رمز.

ومع ذلك ، على الرغم من أنها كلها صحيحة في HTML 5 ، فهي ليست صالحة HTML 4 و HTML 5 لا يزال مشروع في هذه المرحلة.

هو فكرة جيدة والمضي قدما في استخدام هذه الميزات في وقت مبكر ؟

هل هناك متصفح تنفيذ القضايا معهم التي لم تتحقق ؟

يجب أن يكون تطوير صفحات الويب الآن التي تجعل استخدام HTML 5 مشروع الميزات ؟

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

المحلول

هناك العديد من الأشياء في الاعتبار:

  1. أولا التحقق من الصحة لا يعني الكثير لأن صفحة HTML يمكن أن يكون جيدا جدا صالحة ولكن بشدة تأليف التي لا يمكن الوصول إليها ، وما إلى ذلك.انظر أقول لا أن "صالحة HTML" الرموز و إرسال XHTML كما نص/html تعتبر ضارة (في إشارة إلى المتشرد-ويب الاختبارات المذكورة في رد آخر)
  2. ونظرا لهذا, سأكون في غاية يوصي باستخدام DOCTYPE:السبب الوحيد لوجود ذلك في HTML5 هو أنه أصغر الشيء الذي يتسبب في وضع المعايير في المتصفحات, حتى إذا كنت تريد وضع المعايير ، انتقل مع ذلك ؛ لديك أي سبب آخر, مطول, عرضة للخطأ DOCTYPE
  3. أما عن أشكال التحسينات ، يمكنك استخدام وستون Ruter هو webforms2 مكتبة JS لجعله غير علم المتصفحات
  4. و أخيرا, حول data-* سمات ، أ) يعمل في جميع المتصفحات (طالما كنت تستخدم getAttribute()) ب) لا يزال أفضل من إساءة استخدام title أو class سمات ج) لن يزعجك مع التحقق من الصحة كما قلنا في وقت سابق أن التصديق لا أن المهم (بالطبع هو كذلك, ولكن لا يهم أن صفحة غير صالح إذا صلاحية الأخطاء العمد;و يمكنك بالفعل استخدام التحقق من صحة HTML5 في W3C validator, لذا...);لذلك ليس هناك سبب عدم استخدامها أيضا.

نصائح أخرى

سؤال جيد!

باختصار:ذلك يعتمد على السياق ، وتحمل المخاطر :)

أطول قليلا:

  • أنا أعتقد فمن الجيد دائما أن دفع المغلف المبكر اعتماد التكنولوجيا.فهو يوفر لك ميزة على القادمين أواخر في العالم التجاري ، و أيضا يمنحك المزيد من النفوذ في التأثير على التكنولوجيا كما يظهر.

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

إذا كانت الصفحة الخاصة بك يعتمد بشكل كبير على محرك البحث التنسيب ، قد يكون من المفيد النظر إلى أن بعض محركات إعطاء الأولوية التحقق من صحة HTML (المصدر: http://www.hobo-web.co.uk/seo-blog/index.php/official-google-prefers-valid-html-css/).

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

بالطبع و كما هو الحال دائما, لا تعتمد على المتصفح جانب التحقق من صحة جميع المدخلات من جانب الخادم.

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

عندما ميزة نفذت بالفعل في المتصفحات و أنت اختبار مع المتصفحات, بالتأكيد, يرجى استخدام الميزات الجديدة.

انظر أيضا أقدم إجابة.

انظر متانة مبدأ:

في RFC 761 (التحكم في الإرسال بروتوكول عام 1980) الكمبيوتر الأمريكية عالم جون بوستيل تلخيص في وقت سابق من الاتصالات من المطلوب معايير التشغيل البيني بروتوكول الإنترنت (cf.IEN 1111, RFC 760) على النحو التالي:

TCP تطبيقات يجب اتباع المبدأ العام متانة: يكون المحافظ في ما يمكنك القيام به ، الليبرالية في ما يقبل من الآخرين.

لذا, imho لا.

ولن تنفيذ الميزات الجديدة من HTML حتى على الأقل لديهم دعم من جميع المتصفحات الرئيسية.

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

شكل جديد من أنواع هي موضع ترحيب ، ومع ذلك فإن أشكال التحقق في جانب الملقم.

ويمر إلى HTML5 الوثائق الحالية تتطلب الكثير من الجهد و التكيف و في تقديري لن يحدث بين عشية وضحاها.نتوقع على الأقل 3 سنوات حتى ضرب التيار الرئيسي.

وأود أن استخدام HTML 5 فقط من أجل المتعة والتعلم ، لكن نهائيا لا تلمس أي من إنتاج رمز (رمز القائمة) مع هذا المعيار الجديد على الأقل من الآن وحتى لدي سبب وجيه لدعم هذا التحرك.

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