XHTML 1.0 الامتثال الصارم (أو الانتقالي) في ASP.NET 2.0/3.5

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

  •  03-07-2019
  •  | 
  •  

سؤال

هل هناك أي طرق جيدة للحصول على ASP.NET 2.0 للتحقق من صحته بموجب XHTML 1.0 Strict (أو الانتقالي) DTD؟أنا مهتم بسماع بعض الأفكار قبل أن أقوم باختراق جوهر استجابة HTTP.

إحدى المشاكل الرئيسية هي علامة النموذج نفسها، وهذا هو الناتج الذي حصلت عليه من W3C عندما حاولت التحقق من صحته:

Line 13, Column 11: there is no attribute "name".
<form name="aspnetForm" method="post" action="Default.aspx" onsubmit="javascript

تعتبر هذه العلامة أساسية جدًا لـ ASP.NET، كما تعلمون جميعًا.هممممم.

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

المحلول

يمكن لـ ASP.NET 2.0 وما فوق إخراج XHTML الصارم (أو الانتقالي).سيؤدي هذا إلى حل خطأ التحقق من صحة "لا يوجد سمة "اسم""، من بين أمور أخرى.لإعداد هذا، قم بتحديث ملف Web.config الخاص بك بشيء مثل:

<system.web>
    ... other configuration goes here ...
    <xhtmlConformance mode="Strict" />
</system.web>

بالنسبة لـ XHTML الانتقالية، استخدم mode="Transitional" بدلاً من.

يرى كيف:تكوين عرض XHTML في مواقع ويب ASP.NET على MSDN.

نصائح أخرى

هل تعتبر ASP.NET MVC إطار ؟ فمن المحتمل أن يكون أفضل رهان إذا الامتثال الصارم XHTML هو شرط. يمكنك الحصول على المزيد من السيطرة على الإخراج الخاص بك، ولكن عليك أن تمشي منطقة غير مألوفة إذا كنت بالفعل مريحة مع نموذج ASP.NET التقليدي.

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

وأنا عموما تجنب استخدام عناصر تحكم ASP.NET كلما كان ذلك ممكنا، باستثناء تلك التي لا تولد علامات على مثل الخاصة بهم مثل السيطرة مكرر. وأود أن ننظر في إطار ASP.NET MVC (ما بني على ستاكوفيرفلوو)، وهذا يمنحك السيطرة بنسبة 100٪ خلال الترميز.

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