در حال بارگذاری...

بوکمارک در HTML

جلسهٔ Link Titles & Targets چگونگی باز شدن لینک را عوض کرد. بوکمارک (لینک fragment) کجای صفحه فرود می‌آیید را عوض می‌کند. درس‌های بلند، FAQ و مستندات اغلب نیاز به پرش به «قیمت»، «سوالات» یا «بازگشت به بالا» دارند بدون بار کردن سند کاملاً جدید. آن الگو یک id یکتا روی مقصد را با hrefای که با # شروع می‌شود جفت می‌کند.

بوکمارک داخل‌صفحه‌ای چیست؟

شناسهٔ fragment بخشی از URL بعد از # است. در HTML نقطهٔ فرود را با دادن id به یک عنصر می‌سازید. بعد هر لینکی که href آن #that-id باشد از مرورگر می‌خواهد به اولین id هم‌خوان روی صفحه اسکرول کند (یا روی صفحه‌ای که قبل از # نام برده‌اید اگر مسیر بگذارید).

پاسخ مستقیم

  1. به مقصد یک id بدهید، مثلاً <h2 id="pricing">.
  2. با href="#pricing" لینک بزنید.
    # یعنی «این id را پیدا کن». idها روی صفحه باید یکتا باشند. نام کوتاه بدون فاصله را ترجیح دهید: pricing، نه Our Pricing!!.

فهرست مطالب داخل صفحه

یک nav کوچک بالای صفحهٔ بلند دموی کلاسیک مبتدی است: لینک‌های fragment بالا، id هم‌خوان روی عنوان‌های پایین، به‌علاوهٔ لینک بازگشت.

بوکمارک‌های داخل صفحه

html
HTML Code
<nav>
<a href="#intro">Intro</a> |
<a href="#pricing">Pricing</a>
</nav>

<h2 id="intro">Intro</h2>
<p>Welcome to the guide.</p>

<h2 id="pricing">Pricing</h2>
<p>Simple plans for learners.</p>

<p><a href="#intro">Back to intro</a></p>

خواندن نمونهٔ داخل‌صفحه‌ای

  • #intro و #pricing لینک fragment هستند، نه فایل جدا
  • id هر عنوان باید با fragment بعد از # یکی باشد
  • nav می‌تواند هرجا باشد؛ TOC بالای صفحه برای محتوای بلند رایج است
  • «Back to intro» نشان می‌دهد بوکمارک روی همان سند بالا و پایین کار می‌کند

لینک به بخش صفحهٔ دیگر

می‌توانید مسیر نسبی (یا مطلق) را با fragment ترکیب کنید. مرورگر صفحه را بار می‌کند، بعد اگر id وجود داشته باشد به آن می‌پرد.

مسیر به‌علاوهٔ fragment

html
HTML Code
<p>
<a href="guide.html#pricing">Open pricing in the guide</a>
</p>

چه وقت path#id؟

  • پرش همان صفحه: #pricing کافی است
  • فایل HTML دیگر در پروژه: guide.html#pricing
  • مستند بیرونی مورد اعتماد: URL کامل که به #section-name ختم شود وقتی آن سایت id پایدار دارد
    اگر id روی صفحهٔ مقصد نباشد، مرورگر معمولاً صفحه را از بالا باز می‌کند و fragment ناشناخته را نادیده می‌گیرد.

عادت نام‌گذاری id

  • یک مقدار id در هر صفحه — هرگز تکراری نکنید
  • در صورت امکان با حرف شروع کنید؛ از فاصله و نقطه‌گذاری عجیب پرهیز کنید
  • برای نام چندکلمه‌ای خط تیره بگذارید: getting-started
  • اگر صفحات دیگر deep-link می‌زنند نام‌ها را پایدار نگه دارید
    id برای ماشین و URL است؛ متن قابل‌دید عنوان می‌تواند انسان‌پسند و متفاوت از رشتهٔ id بماند.

بوکمارک در برابر «نشانک» مرورگر

مردم «بوکمارک» را برای ذخیرهٔ صفحه در منوی علاقه‌مندی مرورگر هم می‌گویند. این درس یعنی لینک fragment داخل صفحه. علاقه‌مندی مرورگر از URL سند استفاده می‌کند (و گاهی fragment اگر کپی کرده باشید). همان واژه، کار روزمرهٔ متفاوت — وقتی به دیگران می‌آموزید معنی HTML را روشن نگه دارید.

یادداشت دسترس‌پذیری و UX

لینک پرش وقتی مقصدها landmark واقعی‌اند (عنوان، section) به کاربران صفحه‌کلید و خوانندهٔ صفحه کمک می‌کند در صفحات بلند حرکت کنند. ده‌ها id خالی اسپم نکنید. بعد از پرش مطمئن شوید هدف دیده می‌شود — هدر چسبان بعداً با CSS می‌تواند عنوان را بپوشاند؛ فعلاً تأیید کنید بخش درست ظاهر می‌شود.

تمرین در ویرایشگر

  1. دو عنوان با id متفاوت بسازید.
  2. بالاتر لینک‌های fragment با href="#…" بگذارید.
  3. هر لینک را کلیک کنید و تأیید کنید صفحه به عنوان هم‌خوان می‌پرد.
  4. لینک «بازگشت به بالا» به id روی اولین عنوان یا landmark بالا اضافه کنید.
  5. از فایل دوم با other.html#intro لینک بزنید و پرش بین‌صفحه‌ای را تأیید کنید.
  6. موقتاً یک id را تکراری کنید، گیجی را ببینید، بعد یکتایی را درست کنید.

اشتباهات رایج

  • استفاده از یک id دوبار روی یک صفحه
  • فراموش # در href تا مرورگر به‌جایش دنبال نام فایل بگردد
  • گذاشتن فاصله یا نماد عجیب در id
  • لینک به idای که وجود ندارد
  • قاطی کردن بوکمارک fragment با target="_blank" (کار متفاوت)
  • انتظار این‌که #pricing به‌تنهایی بدون مسیر فایل دیگری را باز کند

خلاصه

  • بوکمارک همان‌صفحه از id به‌علاوهٔ href="#id" استفاده می‌کند
  • id باید یکتا، کوتاه و بدون فاصله باشد
  • برای صفحات بلند و فهرست مطالب کوچک عالی است
  • با page.html#id به بخش صفحهٔ دیگر بپرید
  • fragment گم معمولاً بی‌صدا شکست می‌خورد و بالای صفحه می‌مانید

🧠 دانش خود را بیازمایید

آماده شروع

دانش خود را بیازمایید

خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کرده‌اید

❓
6
سوالات
🎯
70%
برای قبولی
♾️
∞
زمان
🔄
∞
تلاش‌ها

📝 دستورالعمل‌ها

  • هر سوال را با دقت بخوانید
  • بهترین پاسخ را برای هر سوال انتخاب کنید
  • می‌توانید آزمون را هر چند بار که می‌خواهید تکرار کنید
  • پیشرفت شما در بالا نمایش داده می‌شود