← Back to HTML Course | Chapter 1: Introduction & Basics | Lesson 11 of 11

HTML Text Semantics

HTML Formatting पहले से ही बड़े, common inline tags को cover करती है -- bold, italic, highlight, sub/superscript। लेकिन inline elements का एक छोटा family है जो ज्यादा specific काम handle करता है: define किए जा रहे term को label करना, machine-readable value को wrap करना, ऐसे text को चिन्हित करना जो सिर्फ अलग तरह से styled है बिना deletion का मतलब दिए, और mixed-language content के लिए text direction को fix करना। इनका उपयोग कम होता है, लेकिन हर एक उस समस्या को हल करता है जिसे ज्यादा common tags हल नहीं कर सकते।
Syntax
markup
<em>Emphasized text</em>
<strong>Important text</strong>
<time datetime="YYYY-MM-DD">Date</time>

dfn से एक Term Define करना

<dfn> element उस specific शब्द या phrase को लपेटता है जिसे किसी passage में पहली बार formally introduce और define किया जा रहा है, आमतौर पर किसी technical term के पहली बार आने पर।

ब्राउज़र इसे आमतौर पर default रूप से italics में render करते हैं, और इसे title attribute के साथ जोड़ने से आप definition को एक tooltip के रूप में जोड़ सकते हैं।

Note: <dfn> का उपयोग सिर्फ किसी term के पहले, defining mention पर करें -- उसी शब्द का बाद का casual mention plain text ही रहना चाहिए।
Warning: <dfn> को <dt> (description term) के साथ confuse करना आसान है; <dfn> किसी sentence के अंदर inline term को चिन्हित करता है, जबकि <dt> एक <dl> list के अंदर entry को label करता है।

उदाहरण: Defining a Term with dfn

markup
<p><dfn title="HyperText Markup Language">HTML</dfn> structures web content.</p>

data से Machine-Readable Values

<data> element visible, human-friendly text को उसके value attribute में stored एक machine-readable equivalent के साथ जोड़ता है -- यह product listings, sort keys, या ऐसे किसी भी content के लिए उपयोगी है जिसे कोई script structured form में पढ़ना चाहे, जबकि visitors को कुछ readable भी दिखे।

Note:
  • <data> का उपयोग तब करें जब किसी script या search engine को एक stable, structured value चाहिए जो page पर दिखने वाले human-readable label से अलग हो।
  • Accepted attributes:
  • value — आवश्यक; machine-readable value string
Warning: value attribute के बिना <data> plain <span> से ज्यादा कोई फायदा नहीं देता -- value attribute ही इस element का पूरा मकसद है।

उदाहरण: Machine-Readable Values with data

markup
<p><data value="398">Product #398</data></p>

s से अब सही नहीं रहा Text

<s> element उस text को mark करता है जो अब सही या relevant नहीं है, जो default रूप से strikethrough के साथ render होता है -- दिखने में <del> जैसा लगता है, लेकिन semantically अलग है।

<s> का उपयोग outdated price या पुराने status जैसी चीज़ों के लिए करें, न कि ऐसे content के लिए जिसे document से literally हटाया गया हो (उसके लिए <del> है)।

Note: "यह पहले सही था लेकिन अब नहीं है" वाले content के लिए <s> का उपयोग करें, जैसे कोई पुरानी हो चुकी price, और <del> को असल document edit history के लिए बचाकर रखें।
Warning: <s> और <del> को आपस में बदल-बदल कर उपयोग करने से वह semantic distinction खो जाता है जिस पर screen readers और search engines यह समझने के लिए भरोसा करते हैं कि text क्यों struck through है।

उदाहरण: Text That Is No Longer Accurate with s

markup
<p><s>$50</s> $35 today only</p>

u से Unarticulated Annotation

<u> element text को underline के साथ render करता है, जो एक ऐसे annotation को दर्शाता है जो stylistically अलग है लेकिन semantically emphasized नहीं है -- आमतौर पर इसका उपयोग Chinese text में किसी proper name को flag करने या किसी गलत spelling वाले शब्द को mark करने के लिए किया जाता है, ठीक वैसे जैसे कोई spell-checker errors को underline करता है।

Note: सिर्फ decoration के लिए text को underline करने हेतु <u> का उपयोग करने से बचें, क्योंकि underlines links के साथ मज़बूती से जुड़े होते हैं -- pure styling के लिए CSS text-decoration का उपयोग करें।
Warning: emphasis के लिए plain text को <u> से underline करना users को confuse कर सकता है कि underlined text एक clickable link है।

उदाहरण: Unarticulated Annotation with u

markup
<p>The word <u>seperate</u> is misspelled.</p>

bdi से Direction Isolate करना

<bdi> (Bidirectional Isolation) element text के किसी span को isolate करता है ताकि उसकी direction (left-to-right या right-to-left) आसपास के text से स्वतंत्र रूप से calculate हो, जो user-generated content -- जैसे किसी English sentence में embedded Arabic username -- को आसपास के text के layout को बिगाड़ने से रोकता है।

Note: किसी अज्ञात या mixed direction वाले user-generated text (जैसे usernames या comments) को किसी अलग direction वाले sentence में display करते समय उसे <bdi> में लपेटें।
Warning: <bdi> के बिना, एक English sentence के अंदर embedded right-to-left username आसपास के punctuation और words को visually scramble कर सकता है।

उदाहरण: Isolating Direction with bdi

markup
<p>User <bdi>عمر</bdi> commented on your post.</p>
Live Example
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
🔒

Chapter Quiz — Complete all 11 topics to unlock

0/11 topics done

Complete these topics first:

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.