إطار (شبكة الويب العالمية)
في سياق متصفح الويب ، الإطار هو جزء من صفحة ويب أو نافذة متصفح يعرض محتوىً مستقلاً عن حاويته، مع إمكانية تحميل المحتوى بشكل مستقل. قد تأتي عناصر HTML أو الوسائط في الإطار من موقع ويب مختلف عن الموقع الذي يوفر المحتوى المُغلِّف. تُعرف هذه الممارسة باسم " التأطير " [ 1 ] ، وتُعتبر اليوم انتهاكًا لسياسة المصدر نفسه .
في لغة HTML ، مجموعة الإطارات هي مجموعة من الإطارات المسماة التي يمكن توجيه صفحات الويب والوسائط إليها؛ يوفر الإطار المضمن إمكانية وضع إطار داخل جسم المستند.
منذ أوائل العقد الأول من القرن الحادي والعشرين، أدى الاهتمام بسهولة الاستخدام وإمكانية الوصول إلى تقليل استخدام مجموعات الإطارات، كما أن معيار HTML5 لا يدعمها.
العلامات والخصائص
تُنشأ الإطارات في لغة HTML باستخدام <frameset></frameset>زوج الوسوم <frame> و <frame>. <frameset>يُعدّ الوسم <frame> وسمًا حاويًا لجميع الوسوم الأخرى المستخدمة لإنشاء الإطارات. <frameset>يحلّ الوسم <frame> محلّ <body>الوسم <frame> في مستندات مجموعة الإطارات. <frameset>يُحدّد الوسم <frame> كيفية تقسيم النافذة إلى إطارات.
تُحدد كل مجموعة إطارات مجموعة من الصفوف أو الأعمدة. إذا حدد المستخدم الإطارات باستخدام rowsالسمة، فسيتم إنشاء إطارات أفقية. أما إذا حددها باستخدام، colsفسيتم إنشاء إطارات رأسية.
يمكن تضمين هذا <noframes>العنصر حتى تتمكن متصفحات الويب التي تم تعطيل الإطارات فيها (أو المتصفحات التي لا تدعم الإطارات) من عرض شيء ما للمستخدم، كما في هذا المثال:
< frameset cols = " 85 % , 15%" > < frame src = "http://www.example.com/frame_1.html" name = "frame_1" > < frame src = "http://alt.example.com/frame_2.html" name = "frame_2" > <noframes> متصفحك لا يدعم الإطارات. <a href="http://www.example.com/frame_1.html"> انقر هنا </a> لعرض الإطار 1. <a href="http://alt.example.com/frame_2.html"> انقر هنا </a> لعرض الإطار 2. </noframes> </frameset> تحتوي مجموعات الإطارات على borderسمة. إذا تم تعيينها إلى عدد صحيح أكبر من صفر، يمكن للمستخدم تغيير حجم الإطارات عن طريق سحب هذا الحد، إلا إذا noresizeكانت السمة موجودة في عنصر الإطار. إذا تم تعيين الحد إلى صفر، فلن يتم عرض أي حد وستتجاور محتويات الإطارات المختلفة دون فصل.
يُستخدم هذا iframeالعنصر ضمن محتوى صفحة HTML عادية، ويُحدد المحتوى والاسم الأوليين بشكل مشابه للعنصر frame. أي نص داخل <iframe></iframe>زوج من الوسوم سيظهر في المتصفحات التي لا تدعم وسم iframe.
< iframe src = " http://www.example.com/frame_1.html" height = " 480 " width = " 640 " > متصفحك لا يدعم الإطارات المضمنة (iframes) . <a href="http://www.example.com/frame_1.html"> انقر هنا </a> لعرض المحتوى . </iframe>تاريخ
قدّم متصفح نتسكيب نافيغيتور 2.0 العناصر المستخدمة في الإطارات في مارس 1996. وتبعه في ذلك العام متصفحات أخرى مثل أبل مع متصفح سايبردوغ . [ 2 ] في ذلك الوقت، اقترحت نتسكيب الإطارات على اتحاد شبكة الويب العالمية (W3C) لإدراجها في معيار HTML 3.0. [ 3 ]
استُخدمت الإطارات لعرض وتصفح المجلات الإلكترونية وتطبيقات الويب المبكرة ، مثل خدمات البريد الإلكتروني ومواقع الدردشة . تميزت الإطارات بإمكانية عرض العناصر على مستوى الموقع بأكمله دون الحاجة إلى ميزات الخادم مثل تضمين الملفات من جانب الخادم أو دعم CGI . لم تكن هذه الميزات شائعة في خوادم الويب المبكرة المتاحة للجمهور.
كانت المواقع الإلكترونية القديمة تستخدم في كثير من الأحيان إطارًا في الأعلى لعرض لافتة لا يمكن إزالتها بالتمرير. وكانت هذه الإطارات تتضمن أحيانًا شعار الموقع بالإضافة إلى الإعلانات . [ 4 ]
أزالت XHTML 1.1، التي كانت تهدف إلى أن تكون خليفة HTML 4، جميع الإطارات. أما XFrames ، التي كانت تهدف إلى أن تكون البديل النهائي، [ 5 ] فقد وفرت معرّف الموارد الموحد المركب (URI) للوصول إلى مجموعة إطارات مكتملة.
أزالت معايير HTML5 اللاحقة مجموعات الإطارات بوسائل تختلف عن XHTML. [ 6 ] ولا يزال العنصر iframeموجودًا مع عدد من خيارات " العزل " المخصصة لمشاركة المحتوى بين المواقع. [ 7 ]
المزايا
بفضل السماح بتحميل المحتوى والتنقل فيه بشكل مستقل، قدمت الإطارات العديد من المزايا مقارنة بلغة HTML العادية المستخدمة عند تطويرها لأول مرة:
- تبسيط صيانة المحتوى المشترك بين جميع الصفحات أو معظمها، مثل بيانات التنقل. [ 8 ] إذا لزم إضافة عنصر إلى قائمة التنقل الجانبية، يحتاج مؤلف صفحة الويب إلى تغيير ملف صفحة ويب واحد فقط، بينما سيتعين تعديل كل صفحة على حدة في موقع ويب تقليدي غير قائم على الإطارات إذا ظهرت قائمة التنقل الجانبية في جميع الصفحات.
- تقليل كمية النطاق الترددي المطلوبة عن طريق عدم إعادة تنزيل أجزاء الصفحة التي لم تتغير.
- يُتيح هذا النظام عرض عدة معلومات جنبًا إلى جنب، مع إمكانية تصفح كل قسم على حدة. قد يشمل ذلك مقارنة صورتين أو مقطعي فيديو جنبًا إلى جنب، أو عرض طريقتين مختلفتين لفهم معلومة ما، مثل صفحة نصية قابلة للتمرير بشكل مستقل بجانب فيديو أو صور أو رسوم متحركة أو مجسمات ثلاثية الأبعاد دوارة، وما إلى ذلك.
- السماح بظهور الحواشي السفلية أو الاستطرادات في قسم مخصص من الصفحة عند ربطها، حتى لا يفقد القارئ مكانه في النص الرئيسي.
- تتمثل الميزة الرئيسية للإطارات في أنها تُمكّن أجزاءً من الصفحة من البقاء ثابتة بينما تتحرك أجزاء أخرى. وهذا مفيد للعناصر التي قد لا ترغب في إخفائها أثناء التمرير، مثل خيارات التنقل أو الإعلانات المصورة.
- تُوحّد الإطارات الموارد الموجودة على خوادم منفصلة. على سبيل المثال، يمكنك استخدام الإطارات لدمج موادك الخاصة (ورسومات التنقل) مع مواد المناقشة المتسلسلة التي يتم إنشاؤها.
نقد
أدت ممارسة تأطير محتوى HTML إلى العديد من الانتقادات، تركز معظمها على مخاوف تتعلق بسهولة الاستخدام وإمكانية الوصول . وتشمل هذه الانتقادات ما يلي:
- يؤدي التأطير إلى كسر الهوية بين المحتوى وعنوان URL كما هو معروض في المتصفح، مما يجعل من الصعب الربط بعنصر معين من المحتوى أو وضع إشارة مرجعية له داخل مجموعة الإطارات [ 9 ].
- إن تطبيق الإطارات غير متسق عبر المتصفحات المختلفة [ 9 ]
- لا تتعامل المتصفحات التي تعرض المحتوى بشكل خطي مع الإطارات بشكل جيد. [ 10 ]
- برامج قارئ الشاشة
- متصفحات النصوص أو الصوت
- متصفحات البريد الإلكتروني مثل أغورا [ 11 ]
- متصفحات الجوال
- يؤدي استخدام الإطارات إلى تعقيد فهرسة الويب ويمكن أن يكون ضارًا بتحسين محركات البحث . [ 12 ]
- يؤدي التأطير إلى تشويش الحدود بين المحتوى الموجود على خوادم مختلفة، [ 13 ] مما يثير قضايا انتهاك حقوق الطبع والنشر [ 14 ].
- قد يصل الزوار القادمون من محركات البحث إلى صفحة مخصصة للعرض في إطار، مما يؤدي إلى عدم وجود طريقة للزائر للتنقل إلى بقية الموقع [ 15 ].
- تُغير الإطارات سلوك زر الرجوع. [ 15 ]
- لا يتوقع المستخدمون عادةً أن تقوم المتصفحات بطباعة الإطارات بالطريقة التي تفعلها. [ 14 ]
- قد تتسبب الروابط الخارجية على صفحات الويب التي تستخدم الإطارات في ظهور صفحات أخرى ضمن مجموعة الإطارات، لأن السلوك الافتراضي للرابط هو التحميل في الإطار الحالي ما لم يحدد المؤلف خلاف ذلك. وقد يستغل مشرفو المواقع عديمو الضمير هذا الأمر لإظهار محتوى من موقع آخر وكأنه جزء من الموقع الذي يستضيف مجموعة الإطارات.
- إذا كانت دقة الشاشة أو حجم نافذة المتصفح منخفضًا جدًا، فستحتوي كل إطار على أشرطة تمرير، مما قد يُشوه المظهر ويستهلك مساحة محدودة أصلًا. عادةً ما ينتج هذا السلوك عن تصميم موقع سيئ (تخطيطات ثابتة بدلًا من التخطيطات المرنة)، حيث لم تُستغل جميع ميزات مجموعة الإطارات بالشكل الأمثل. يمكن التخفيف من هذا السلوك عن طريق:
- تعطيل التمرير للإطارات الأصغر التي لا تتطلب عادةً شريط تمرير؛
- استخدام خصائص التصميم المرن في الصفحات المستهدفة بدلاً من التصاميم الثابتة، بحيث لا يتسبب المحتوى في ظهور أشرطة التمرير الأفقية في المقام الأول.
حماية
تُسبب الإطارات صعوبات تقنية وأخرى تتعلق بواجهة المستخدم عند تطبيق سياسة المصدر نفسه . فعلى سبيل المثال، قد تُضلل صفحة خارجية المستخدم لحمله على تنفيذ إجراء ما على صفحة داخلية (تم تحميلها باستخدام عنصر iframe) والتي تم جعلها شفافة بنسبة 99%.
البدائل
مع تطور تكنولوجيا الويب، أصبح من الممكن تحقيق العديد من الأغراض التي كانت تستخدم من أجلها الإطارات بطرق تجنبت المشاكل التي تم تحديدها مع الإطارات.
- تسمح أوراق الأنماط المتتالية (CSS) بتمرير عناصر الصفحة بشكل مستقل (باستخدام
overflowالخاصية) أو تثبيتها على الشاشة أثناء تمرير محتوى آخر (باستخدام الخاصيةposition:fixed). - سمحت خاصية تضمين جانب الخادم بتحرير المحتوى المشترك مرة واحدة وتسليمه تلقائيًا إلى العميل كجزء من الصفحة النهائية؛ ومع زيادة سرعة وحدة المعالجة المركزية للخادم وسرعة الاتصال، أصبح العمل الإضافي المطلوب للقيام بذلك أثناء التشغيل أقل أهمية.
- لقد وفرت لغات البرمجة النصية الموجهة للويب وتقنيات CGI وأطر تطوير الويب مثل PHP و Active Server Pages ، بالإضافة إلى أنظمة إدارة المحتوى المدعومة بقواعد البيانات مثل WordPress ، خيارات أكثر ثراءً للحفاظ على المحتوى وتوفير التنقل.
- أتاحت البرمجة النصية من جانب العميل وتقنية HTML الديناميكية إمكانية استبدال أجزاء من الصفحة بصريًا بناءً على تفاعلات المستخدم. وقد وفر ذلك مرونة أكبر بكثير لعرض المحتوى الجانبي، مثل الحواشي السفلية أو التعليمات، حيث أصبح بالإمكان عرضها وإخفاؤها في أي مكان على الصفحة دون الحاجة إلى إطار مُحدد مسبقًا.
- سمحت تقنية AJAX بالعرض الديناميكي للمحتوى داخل الصفحة حتى عندما يكون من الضروري جلبه من الخادم، على سبيل المثال بناءً على المستخدم المسجل أو الأحداث في مكان آخر.
انظر أيضاً
مراجع
- ↑ "الاتصال بمواقع ويب أخرى" . 2 أبريل 2013.
ما يميز تقنية الإطارات هو أنه بدلاً من نقل المستخدم إلى موقع الويب المرتبط، يتم استيراد المعلومات من ذلك الموقع إلى الصفحة الأصلية وعرضها في "إطار" خاص. من الناحية التقنية، عند عرض معلومات مُؤطّرة، يكون جهاز الكمبيوتر الخاص بك متصلاً بالموقع الذي يقوم بإنشاء الإطار، وليس بالموقع الذي تظهر صفحته في الإطار.
- ↑ غارافا، ديف (23 ديسمبر 1996). "هدية من آبل: سايبردوغ 2.0a1" (بيان صحفي). Internet.com . مؤرشف من الأصل في 17 أغسطس 2000. تم الاطلاع عليه في 14 أبريل 2011 .
- ↑ لاد، إريك. "استخدام HTML 3.2، وجافا 1.1، وCGI؛ الفصل 13، الإطارات" . مؤرشف من الأصل في 30 أكتوبر 2007.
- ↑ شيفر ، دان (1996). سحر جافا سكريبت ونتسكيب . سكوتسديل، أريزونا: كتب مجموعة كوريوليس. ص 31. ISBN 978-1-883577-86-5.
- ↑ "مسودة عمل XSframes" . W3C.
- ↑ اختلافات HTML5 عن HTML4 : "العناصر التالية غير موجودة في HTML5 لأن استخدامها يضر بسهولة الاستخدام: frame، frameset، noframes"
- ↑ اختلافات HTML5 عن HTML4 : "يحتوي عنصر iframe على سمات جديدة تسمى sandbox و srcdoc والتي تسمح بعزل المحتوى، على سبيل المثال تعليقات المدونة."
- ↑ "مجموعات الإطارات" .
- 1 2 نيلسن، جاكوب (ديسمبر 1996). "الإطارات سيئة في معظم الأوقات" .
- ↑ "هل يجب عليك استخدام الإطارات؟" . درس تعليمي حول كود HTML. مؤرشف من الأصل في 6 أغسطس 2016. تم الاطلاع عليه في 7 أبريل 2010 .
- ↑ "دليل جي إي بويد لكيفية القيام بأي شيء تقريبًا عبر البريد الإلكتروني - الجزء الأول" . جيو سيتيز . ١١ أغسطس ٢٠٠٠. مؤرشف من الأصل في ١٧ أغسطس ٢٠٠٠. تم الاطلاع عليه في ٢٤ يونيو ٢٠١٠ .
- ↑ مور-إيديد، بيرس. "أساسيات تحسين محركات البحث 1" . لويس لتحسين محركات البحث . تم الاطلاع عليه بتاريخ 25 فبراير 2012 .
- ↑ "نادي أكره الإطارات" . مؤرشف من الأصل في 28 مارس 2002.
- 1 2 "لماذا تعتبر الإطارات شريرة للغاية؟ "
- 1 2 "مزايا وعيوب الإطارات في صفحات الويب" .
روابط خارجية
- مساعدة HTML: ما المشكلة في الإطارات؟
- نصائح دان للويب: الإطارات
- نص برمجي مصمم لمنع تضمين محتواك
- HTML
- ويب 1.0
