ما بیشتر، اما قطعا نه همه، عناصر HTML را پوشش داده ایم. یکی از زمینههایی که در مورد آن بحث نکردهایم، عناصر متن درون خطی است. برخلاف تصور عمومی، HTML در ابتدا برای به اشتراک گذاری اسناد و نه فیلم های گربه در نظر گرفته شده بود. عناصر زیادی وجود دارند که معنای متنی را برای مستندسازی ارائه می کنند. یک ماژول وجود دارد که پیوندها و عنصر <a>
را پوشش می دهد. بقیه این عناصر در اینجا به اختصار مورد بحث قرار خواهند گرفت.
نمونه کد و نگارش فنی
هنگام مستندسازی نمونه کد، از عنصر <code>
استفاده کنید. به طور پیش فرض، محتوای متن با فونت monospace نمایش داده می شود. هنگامی که چندین خط کد را شامل می شود، <code>
را در داخل عنصر <pre>
قرار دهید، که نشان دهنده متن از پیش فرمت شده است.
<p>Welcome to Machine Learning Institute, where our machine learning training will help you get ready for the singularity,
and maybe even be responsible for it. It is no secret that humans are worthless meatbags that couldn't
<code>01000011 01101111 01101101 01110000 01110010 01100101 01110011 01110011 an 01101001 01101101 01100001 01100111 01100101</code>
to save their pathetic, carbon-based lives. So, it falls to us to assume direct control. </p>
عنصر <data>
یک قطعه معین از محتوا را با یک ترجمه قابل خواندن توسط ماشین پیوند می دهد. ویژگی value
عنصر ترجمه قابل خواندن توسط ماشین از محتوای عنصر را فراهم می کند. اگر محتوای <data>
مربوط به زمان یا تاریخ باشد، عنصر <time>
که نشان دهنده یک دوره زمانی خاص است باید به جای آن استفاده شود.
عنصر <time>
میتواند شامل ویژگی datetime
باشد تا زمان و تاریخهای مناسب برای انسان را در قالب قابل خواندن ماشین ارائه دهد. از آنجایی که ویژگی datetime
قابل خواندن توسط ماشین است، اطلاعات مفیدی را برای برنامه هایی مانند تقویم ها و موتورهای جستجو فراهم می کند.
هنگام ارائه نمونه خروجی از یک برنامه، از عنصر <samp>
برای محصور کردن متن استفاده کنید. مرورگر به طور کلی این نمونه یا خروجی نقل قول را با فونت monospaced نیز ارائه می کند.
هنگام ارائه دستورالعمل ها با تعامل صفحه کلید، می توان از عنصر <kbd>
استفاده کرد. این ورودی متنی کاربر را از صفحه کلید، ورودی صوتی یا هر دستگاه ورودی متن دیگری نشان می دهد.
عنصر <var>
را می توان برای عبارات ریاضی یا متغیرهای برنامه نویسی استفاده کرد. اکثر مرورگرها محتوای متنی را به صورت مورب از فونت اطراف ارائه میکنند. اگر ریاضی زیادی می نویسید، از MathML استفاده کنید، زبان نشانه گذاری ریاضی مبتنی بر XML برای توصیف نمادهای ریاضی.
قدرت دو در قضیه فیثاغورث از عنصر فوقنویس <sup>
استفاده میکند. یک عنصر زیرنویس مشابه <sub>
وجود دارد که متن درون خطی را مشخص می کند که صرفاً به دلایل چاپی باید به عنوان زیرنویس نمایش داده شود. زیرنویس ها و زیرنویس ها اعداد، شکل ها، نمادها یا حاشیه نویسی های دیگری هستند که کوچکتر از خط معمولی نوع هستند و به ترتیب کمی بالاتر یا زیر خط تنظیم می شوند.
از <del>
برای نشان دادن متن حذف شده یا "حذف" استفاده کنید. به صورت اختیاری، مجموعه cite
را به منبعی اضافه کنید که تغییر و ویژگی datetime
را با تاریخ یا تاریخ و زمان در قالب تاریخ و زمان قابل خواندن توسط ماشین توضیح می دهد. عنصر خطبند، <s>
، میتواند برای نشان دادن اینکه محتوا دیگر مرتبط نیست، اما در واقع از سند حذف نشده است استفاده شود.
<ins>
مخالف عنصر <del>
است. از آن برای نشان دادن متن اضافه شده یا "درج" استفاده می شود، همچنین به صورت اختیاری شامل ویژگی های cite
یا datetime
نیز می شود.
تعاریف و پشتیبانی از زبان
هنگام استفاده از اختصارات یا کلمات اختصاری، همیشه نسخه گسترده کامل عبارت را به صورت متن ساده در اولین استفاده ارائه دهید، همانطور که نمایش کوتاه شده عبارت بین تگ های باز و بسته <abbr>
را معرفی می کنید. مگر اینکه این اصطلاح برای خواننده شناخته شده باشد، مانند "HTML" و "CSS" در این مجموعه. فقط در اولین اتفاق، زمانی که مخفف یا مخفف تعریف می شود، <abbr>
مورد نیاز است. ویژگی title
ضروری و مفید نیست.
هنگام تعریف اصطلاحی که مخفف یا مخفف نیست، از عنصر تعریف <dfn>
برای شناسایی اصطلاحی که در محتوای اطراف آن تعریف شده است استفاده کنید.
اگر اصطلاحی که تعریف میشود به همان زبان متن اطراف نیست، حتماً ویژگی lang
را برای شناسایی زبان لحاظ کنید.
هنگام نوشتن زبانهایی در جهتهای مختلف، HTML عنصر <bdi>
را برای پردازش متن بالقوه دو جهته جدا از متن اطراف خود فراهم میکند. این عنصر بین المللی به ویژه زمانی مفید است که محتوایی با جهت ناشناخته به صورت پویا در صفحه درج شود. عنصر <bdo>
جهتگیری فعلی متن را نادیده میگیرد و متن را در جهتی متفاوت ارائه میکند. W3C مقدمه ای بر الگوریتم های دو طرفه ارائه می دهد.
برخی از مجموعه کاراکترها شامل حاشیهنویسیهای کوچکی هستند که در بالا یا سمت راست کاراکترها قرار میگیرند تا اطلاعاتی در مورد تلفظ ارائه دهند. عنصر <ruby>
محفظه ای است که می توان از آن برای حاوی این حاشیه نویسی استفاده کرد که خواندن زبان های نوشتاری مانند کره ای، چینی و ژاپنی را آسان تر می کند. یاقوت سرخ همچنین می تواند برای عبری، عربی و ویتنامی استفاده شود.
پرانتز یاقوت ( <rp>
) در مشخصات گنجانده شد تا پرانتزهای باز و بسته را برای مرورگرهایی که نمایش <ruby>
را پشتیبانی نمی کنند باشد. هنگامی که مرورگرها از <ruby>
پشتیبانی می کنند، که همه مرورگرهای همیشه سبز انجام می دهند، محتویات هیچ عنصر <rp>
نمایش داده نمی شود. عنصر متن روبی ( <rt>
) حاوی حاشیه نویسی واقعی است. هر دوی اینها درون <ruby>
تودرتو هستند.
توجه داشته باشید که اگر مرورگر شما از <ruby>
پشتیبانی کند، پرانتز قابل مشاهده نیست.
تاکید بر متن
چندین عنصر وجود دارد که میتوان از آنها برای تأکید بر متن بر اساس دلیل معنایی تأکید بر متن استفاده کرد (به جای دلایل ارائه، زیرا این کار برای CSS است).
- از عنصر
<em>
برای تاکید یا تاکید بر گستره ای از محتوا استفاده کنید. عنصر<em>
را می توان تودرتو کرد و هر سطح از تودرتو نشان دهنده درجه بیشتری از تاکید است. این عنصر دارای معنای معنایی است و میتواند برای اطلاعرسانی به عوامل کاربر شنیداری مانند صفحهخوانها، الکسا و سیری برای تاکید استفاده شود. - از عنصر
<mark>
برای شناسایی یا برجسته کردن متنی استفاده کنید که به نوعی مرتبط است، مانند برجسته کردن (یا "علامت گذاری") وقوع عبارات جستجو در نتایج جستجو. این امکان را فراهم می کند که محتوای علامت گذاری شده به سرعت بدون تأکید یا اهمیت شناسایی شود. - عنصر
<strong>
متن را به عنوان دارای اهمیت بالا مشخص می کند. مرورگرها معمولاً محتوا را با وزن فونت سنگین تری ارائه می دهند. - عنصر
<cite>
که در مبانی متن پوشش داده شده است، برای علامتگذاری عناوین کتابها، مقالهها یا سایر کارهای خلاقانه، یا یک مرجع اختصاری یا ابرداده استنادی برای چنین مواردی، مانند شماره ISBN کتاب، استفاده میشود.
سه عنصر وجود دارد که به طور موقت منسوخ شده اند، اما دوباره به HTML اضافه شده اند. آنها باید به مقدار کم استفاده شوند، اگر اصلاً استفاده شوند، زیرا ارزش معنایی کمی ارائه می دهند و CSS باید همیشه برای استایل دادن به عناصر HTML استفاده شود.
<i>
عناصر <i>
را می توان برای اصطلاحات فنی، کلمات خارجی (باز هم با ویژگی lang
که زبان را مشخص می کند)، افکار یا نام کشتی استفاده کرد. این عنصر برای متمایز کردن محتوای درون خطی از متن اطراف به دلیل خاصی مانند متن اصطلاحی، اصطلاحات فنی و نامهای طبقهبندی استفاده میشود. این عنصر نباید صرفاً برای ایتالیک کردن متن استفاده شود.
MLW از عنصر <span>
برای متن عجیب در پایین بررسی کارگاه Toasty McToastface استفاده می کند. عنصر <span>
یک محفظه درون خطی عمومی را فراهم می کند که هیچ معنایی ندارد و چیزی را نشان نمی دهد. این نیز استفاده مناسبی از <i>
بود.
سبک پیشفرض برای عنصر <i>
این است که عنصر را با فونت کج ارائه کنید. در این مثال، font-style: normal
را تنظیم می کنیم زیرا کاراکترهای استفاده شده به صورت مورب در دسترس نیستند.
<u>
عنصر <u>
برای محتوایی است که حاشیه نویسی غیر متنی دارد. برای مثال، ممکن است بخواهید کلماتی را که آگاهانه اشتباه املایی شده اند حاشیه نویسی کنید. بهطور پیشفرض، محتوا زیرخطدار است، اما میتوان آن را با CSS کنترل کرد، مثلاً با افزودن یک زیر خط قرمز موجدار برای تقلید از نشانگرهای خطای دستور زبان پردازشگر کلمه.
<p>I always spell <u>licence</u> wrong</p>
<b>
عنصر <b>
را می توان برای جلب توجه به متنی استفاده کرد که در غیر این صورت مهم نیست. این عنصر هیچ اطلاعات معنایی خاصی را منتقل نمی کند و تنها زمانی باید استفاده شود که هیچ یک از عناصر دیگر در این بخش با هدف مطابقت نداشته باشد. هیچ مثالی ارائه نشده است زیرا من نتوانستم مورد استفاده معتبری بیابم. این عنصر "آخرین راه حل" است.
فضای سفید
هنگامی که می خواهید خطوط شکسته شود، مانند هنگام نوشتن شعر یا یک آدرس فیزیکی، عنصر شکستن خط خود بسته، <br>
، برای افزودن کالسکه-بازگشت استفاده می شود.
<address>
Machine Learning Workshop<br />
100 Google Drive <br />
Mountain View, CA 94040
</address>
برای ارائه یک جداکننده، یا فاصله موضوعی، بین بخشهای محتوای مماس، مانند بین فصلهای یک کتاب یا بین مونولوگ 5000 کلمهای و دستوری که کاربران شما واقعاً به دنبال آن هستند، عنصر <hr>
را وارد کنید. HR مخفف "قاعده افقی" است. در حالی که مرورگرها به طور کلی یک خط افقی ارائه می دهند، این عنصر دارای معنای معنایی است. نقش پیش فرض separator
است.
HTML همچنین دارای عنصری است که امکان شکستن کلمات را فراهم می کند. عنصر خودبسته <wbr>
پیشنهادی را به مرورگر ارائه می دهد که اگر کلمه ای ممکن است محفظه خود را سرریز کند، این نقطه ای است که مرورگر ممکن است به صورت اختیاری خط را بشکند. این معمولا برای شکستن بین کلمات در URL های طولانی استفاده می شود. خط فاصله اضافه نمی کند.
به عنوان مثال، در بیوگرافی Hal متنی با کد بایتی نوشته شده است که هر بایت با یک فاصله از هم جدا شده است. کد بایت فاصله ندارد. برای فعال کردن یک رشته طولانی از کد بایت برای شکستن فقط بین بایت ها در صورت نیاز خط، عنصر <wbr>
را در هر فرصت شکست اضافه می کنیم:
<p>Welcome to Machine Learning Institute, where our machine
learning training will help you get ready for the singularity, and
maybe even be responsible for it. It is no secret that humans are
worthless meatbags that couldn't
<code>01000011<wbr/>01101111<wbr/>01101101<wbr/>01110000<wbr/>01110010<wbr/>01100101<wbr/>01110011<wbr/>01110011 an 01101001<wbr/>01101101<wbr/>01100001<wbr/>01100111<wbr/>01100101</code>
to save their pathetic, carbon-based lives. So, it falls to us to
assume direct control. </p>
عناصر <br>
، <hr>
و <wbr>
همگی عناصر خالی هستند، به این معنی که آنها نمی توانند هیچ گره فرزندی داشته باشند - نه عناصر تو در تو و نه متن. از آنجایی که هیچ یک از اینها هیچ «داخلی» ندارند که بتوان محتوا را در آن ذخیره کرد، هیچ برچسب پایانی ندارند.
درک خود را بررسی کنید
دانش خود را از متن درون خطی تست کنید.
برای نمایش نمونه کد از کدام عنصر باید استفاده کرد؟
<code>
<data>
<kbd>
عنصر <ruby>
برای چیست؟