for - s3 school html



علامات النمط والنص في نص HTML... لم لا؟ (5)

الجواب القصير:

الجواب التفصيلي:

تم تعريف STYLE لتكون في head.misc :

<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|OBJECT" -- repeatable head elements -->

ويسمح فقط لعناصر head.misc أن تكون أبناء عنصر HEAD . لذا يُسمح لـ STYLE فقط أن تكون تابعة لعنصر HEAD .

يتم تعريف SCRIPT ليكون في head.misc special :

<!ENTITY % special
   "A | IMG | OBJECT | BR | SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO">

ويتم تعريف الخاص ليكون في السطر :

<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">

بالإضافة إلى ذلك ، يُسمح لـ SCRIPT أيضًا أن تكون تابعة لعنصر BODY . لذا يُسمح بـ SCRIPT في عنصر HEAD nad حيثما سمح بالمضمون .

https://src-bin.com

[هذا مرتبط بهذا السؤال ، ولكن ليس لأنه لا يتعلق بالبريد الإلكتروني.]

في العديد من الحالات - خاصةً عند العمل باستخدام CMS أو إطار عمل شخص آخر ، من الأسهل بكثير تضمين علامات <style> وعلامات <script> في <body> مقارنة بـ <head> . يبدو أن هذا يعمل في IE6 و IE7 (Windows) و Firefox 3.x و Safari (OS X).

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

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

يمكنك مركزية الأشياء التي المركزية. كل شيء آخر هو سخام في الأنماط المركزية.


Answer #1

المشكلة الأكبر ، في رأيي ، هي الراحة. إذا كنت ترغب في تغيير نمط الصفحة ، فسيكون من الأسهل إجراء ذلك إذا كانت كل معلومات النمط والنص في منطقة واحدة. من الممكن أن تكون معلومات النمط / البرنامج النصي في عقدة <style> أو في سمة style العقدة (أي <body style='...'> ) أو في ملف خارجي (على سبيل المثال <link rel='stylesheet' type='text/css' href='style.css' /> ). من الأسهل بكثير استخدام موقع ثابت بدلاً من محاولة البحث عن جميع الأماكن التي يمكن أن يحدث فيها نمط ما.

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


Answer #2

جوابان ممكنان للأسلوب في الجسم:

  1. استخدام التصميم المضمن. صحيح ، ستفقد مزايا التصميم الداخلي والخارجي ، ولكن إذا لم يكن لديك إمكانية الوصول إلى الرأس ، فلن تتمكن من الوصول إلى الرأس.

  2. استخدم السمة المحددة في عنصر النمط. هذا جديد على HTML5 ، لكن الفكرة هي قصر نطاق CSS على جزء من الصفحة ، على سبيل المثال div واحد. الأخبار السيئة هي أنه غير معتمد حتى الآن (اعتبارًا من يوليو 2011) ، كما أنه غير متوافق مع الإصدارات السابقة. ولكن هناك (يُزعم) مكون إضافي JQuery يمكن أن يساعد. لمزيد من المعلومات:


Answer #3

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

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


Answer #4

ولكن لماذا سيكون لديك علامات أزياء في الجسم؟ الأنماط عامة على أي حال ، لذلك لا يمكنني العثور على أي سبب منطقي للقيام بذلك.

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

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





syntax