UltKit

ترميز كيانات HTML وفك ترميزها

رمّز الأحرف التي يعاملها HTML على أنها وسوم، ويمكنك أيضًا ترميز كل حرف خارج نطاق ASCII، أو حوّل كيانات مثل é و— إلى نص عادي. يعمل الاتجاهان في متصفحك، ولا يُعرض النص المفكوك ترميزه أبدًا كـ HTML فعلي.

الوضع
نمط الكيان
التهريب

0 حرف · 0 كلمة · 0 سطر

0 حرف · 0 كلمة · 0 سطر

تعمل الأداة بالكامل داخل تبويب المتصفح هذا. لا يتم رفع نصك ولا حفظه.

أحرف شائعة وكياناتها

تُفك الصيغ المسماة والعشرية والسداسية عشرية إلى الحرف نفسه. يعرف المرمِّز 216 كيانًا مسمى شائعًا، ويفهم فاك الترميز كل مرجع مسمى في معيار HTML.

الحرفمسمّىعشريسداسي عشري
&&&&
<&lt;&#60;&#x3C;
>&gt;&#62;&#x3E;
"&quot;&#34;&#x22;
'&apos;&#39;&#x27;
(مسافة غير منقسمة)&nbsp;&#160;&#xA0;
©&copy;&#169;&#xA9;
®&reg;&#174;&#xAE;
™&trade;&#8482;&#x2122;
€&euro;&#8364;&#x20AC;
£&pound;&#163;&#xA3;
¥&yen;&#165;&#xA5;
—&mdash;&#8212;&#x2014;
–&ndash;&#8211;&#x2013;
…&hellip;&#8230;&#x2026;
«&laquo;&#171;&#xAB;
»&raquo;&#187;&#xBB;
°&deg;&#176;&#xB0;
×&times;&#215;&#xD7;
÷&divide;&#247;&#xF7;
é&eacute;&#233;&#xE9;
π&pi;&#960;&#x3C0;
→&rarr;&#8594;&#x2192;
😀—&#128512;&#x1F600;

من 252 كيانًا في HTML 4 إلى 2,231 كيانًا في HTML5

المرجع الحرفي (character reference) طريقة لكتابة أي حرف باستخدام ASCII فقط. تصلح المراجع الرقمية لأي نقطة رمزية في Unicode، بالنظام العشري (&#233;) أو السداسي عشر (&#xE9;). أما المراجع المسماة فأسهل في الحفظ: عرّفت HTML 4 منها 252 مرجعًا، تشمل حروف Latin-1 مثل &eacute; والحروف اليونانية والرموز الرياضية والعلامات الطباعية مثل &mdash; و&hellip;. ومن الغريب أن &apos; لم تكن بينها؛ فقد جاءت من XML ولم تصبح صالحة في HTML إلا مع HTML5.

وسّعت HTML5 القائمة إلى 2,231 مرجعًا مسمى بعد أن استوعبت مجموعة كيانات MathML، فصارت أسماء مثل &check; و&bigstar; و&NotEqualTilde; تعمل في كل المتصفحات الحالية. ويشمل هذا العدد صيغًا قديمة بلا فاصلة منقوطة ختامية، مثل &amp و&copy، وما زالت المحللات تقبلها للتوافق لكن لا ينبغي أن تكتبها. يُنتج المشفّر هنا أسماء HTML 4 المدعومة على نطاق واسع إضافة إلى &apos;، ويلجأ إلى مرجع رقمي لكل ما عدا ذلك؛ أما فك الترميز فيمرر النص إلى محلل المتصفح نفسه، لذلك يفهم كل الأسماء الـ 2,231.

ما الذي يجب ترميزه، ومتى لا يكفي الترميز

الخيار Only & < > " ' هو الإعداد المناسب للعمل اليومي: يهرّب الأحرف الخمسة التي قد تنهي عقدة نصية أو قيمة سمة مقتبسة، وهذا يكفي لعرض مثال برمجي في صفحة أو لوضع نص المستخدم داخل HTML بأمان. أما Also every non-ASCII character فيحوّل é و€ والرموز التعبيرية إلى مراجع أيضًا، للقنوات النادرة التي لا تحمل UTF-8، مثل بعض قوالب البريد القديمة أو الأنظمة التي تفسد الترميز. وNamed وDecimal وHex تغيّر طريقة كتابة المرجع فقط؛ وكلها تُفك إلى الحرف نفسه. والصفحة المحفوظة بترميز UTF-8 لا تحتاج إلى كيانات للأحرف المشكّلة.

يحمي التهريب سياق HTML فقط ولا شيء غيره. فالنص المُدرج في كتلة script أو في معالج حدث مضمّن مثل onclick أو في سمة style أو في href قد يبدأ بـ javascript: يحتاج إلى معالجة مختلفة، ولا يمنع ترميز الكيانات وحده هجمات البرمجة عبر المواقع (XSS) هناك. وتهرّب أطر مثل React النصوص افتراضيًا، لذلك فالتهريب المزدوج هو الخطأ الأكثر شيوعًا في التطبيقات الحديثة: يرى المستخدمون &amp; حيث يجب أن تظهر علامة &. ولإزالة الوسوم كليًا حوّل الشيفرة باستخدام HTML إلى TXT، ولتهريب الأحرف داخل الروابط استخدم ترميز URL وفك ترميزه.

الأسئلة الشائعة

ما الأحرف التي يجب ترميزها في HTML؟
في النص تكون & و< الأهم، وتُهرَّب > بحكم العرف. وداخل قيمة السمة هرّب أيضًا علامة الاقتباس التي تحدّها. وتهريب الأحرف الخمسة يغطي الحالتين.
ما الفرق بين &nbsp; والمسافة العادية؟
&nbsp; هي المسافة غير القابلة للانقسام، U+00A0. تبدو كمسافة عادية لكنها تمنع كسر السطر عندها، ولا تُختزل عند تكرارها معًا، بخلاف المسافات العادية في HTML.
لماذا تعرض صفحتي &amp; بدلًا من علامة العطف؟
هُرّب النص مرتين: مرة في بياناتك ومرة أخرى بواسطة القالب أو الإطار. خزّن النص الخام واترك طبقة واحدة، وهي عادة القالب، تتولى التهريب عند الإخراج.
هل من الآمن فك ترميز HTML من مصدر غير موثوق هنا؟
نعم. يحلل فك الترميز المدخلات كمحتوى نصي عادي، فلا تُنشأ وسوم ولا تُشغَّل سكربتات ولا تُحمَّل صور. يتحول فقط ما كان مرجع كيان إلى حروف.
أيهما أفضل: الكيانات المسماة أم الرقمية؟
المسماة أسهل قراءة، والرقمية تصلح لكل الأحرف ولكل محللات XML. وفي XML بلا DTD لا يوجد معرَّفًا مسبقًا سوى &amp; و&lt; و&gt; و&quot; و&apos;.