تگ bgsound در HTML چیست و چرا منسوخ شده است؟

کاور مقاله تگ bgsound در HTML چیست؟ چه کاربردی دارد؟
تگ bgsound یکی از عناصر قدیمی HTML بود که برای پخش صدای پس‌زمینه در صفحات وب استفاده می‌شد. این تگ امروزه منسوخ شده و نباید در پروژه‌های جدید به کار رود. در این مقاله با کاربرد و سینتکس تاریخی bgsound، اتریبیوت‌هایی مانند src، loop، volume و balance و دلیل کنار گذاشته‌شدن آن آشنا می‌شوید. همچنین یاد می‌گیرید هنگام مواجهه با bgsound در کدهای قدیمی، چگونه رفتار موردنیاز را با تگ استاندارد audio و روش‌های امروزی HTML جایگزین کنید.

اگر هنگام بررسی یک قالب یا کد HTML قدیمی با bgsound روبه‌رو شده‌اید، احتمالاً اولین سؤال این است که این تگ چه کاری انجام می‌دهد و آیا هنوز می‌توان از آن استفاده کرد. bgsound برای پخش صدای پس‌زمینه در صفحات وب قدیمی به کار می‌رفت، اما امروز یک عنصر منسوخ HTML است و برای پروژه‌های جدید انتخاب مناسبی محسوب نمی‌شود.

در این مقاله ابتدا می‌بینیم تگ bgsound چگونه کار می‌کرد و چه اتریبیوت‌هایی داشت؛ سپس وضعیت آن در HTML امروزی را بررسی می‌کنیم و در نهایت یاد می‌گیریم هنگام برخورد با چنین کدی، چگونه رفتار موردنیاز را با تگ استاندارد audio جایگزین کنیم.

 

تگ bgsound در HTML چیست؟

تگ bgsound در HTML یک عنصر قدیمی برای پخش صدای پس‌زمینه در صفحه وب بود. با قرار دادن این تگ در کد صفحه و مشخص‌کردن فایل صوتی، مرورگر می‌توانست هنگام نمایش صفحه صدا را پخش کند؛ بدون اینکه یک پخش‌کننده صوتی معمولی در محتوای صفحه دیده شود.

این عنصر بیشتر در صفحات و پیاده‌سازی‌های قدیمی وب دیده می‌شود و در مستندات قدیمی Internet Explorer مایکروسافت نیز برای ایجاد Background Sound یا Soundtrack تعریف شده بود.

ممکن است هنگام بررسی قالب‌ها، پروژه‌های Legacy یا نمونه‌کدهای بسیار قدیمی با چنین ساختاری روبه‌رو شوید:

				
					<bgsound src="music.mid">
				
			

در این مثال، فایل music.mid به‌عنوان صدای پس‌زمینه صفحه در نظر گرفته شده است.

نکته مهم این است که دیدن bgsound در یک کد قدیمی به این معنی نیست که هنوز باید از آن استفاده کنید. در استاندارد فعلی HTML، این عنصر کاملاً منسوخ است و راهکار استاندارد برای قرار دادن محتوای صوتی در صفحه، عنصر audio است.

بنابراین اگر در حال یادگیری مبانی HTML یا توسعه یک سایت جدید هستید، bgsound تگی نیست که لازم باشد برای استفاده عملی یاد بگیرید. شناخت آن بیشتر زمانی اهمیت دارد که با کدهای قدیمی HTML سروکار دارید و می‌خواهید بدانید این کد چه کاری انجام می‌داده و چگونه باید آن را با راهکار امروزی جایگزین کنید. برای مرور ساختاری سایر عناصر نیز می‌توانید فهرست تگ‌های HTML را ببینید.

 

 

سینتکس و اتریبیوت‌های تگ bgsound

در کدهای قدیمی HTML، تگ bgsound معمولاً با مشخص‌کردن آدرس فایل صوتی در اتریبیوت src استفاده می‌شد: اگر با نقش این ویژگی‌ها آشنا نیستید، راهنمای اتریبیوت در HTML مبنای لازم را توضیح می‌دهد.

				
					<bgsound src="music.mid">
				
			

امکان کنترل بعضی ویژگی‌های پخش نیز با اتریبیوت‌های اختصاصی این عنصر وجود داشت. برای مثال:

				
					<bgsound
  src="music.mid"
  loop="infinite"
  volume="-1000"
  balance="0">

				
			

این نمونه را باید به‌عنوان کد Legacy بشناسید، نه الگویی برای استفاده در یک پروژه جدید.

تریبیوتاربرد تاریخی
srcآدرس فایل صوتی موردنظر برای پخش را مشخص می‌کرد.
loopتعداد دفعات تکرار صدا را تعیین می‌کرد و در نمونه‌های قدیمی مقدار infinite نیز برای تکرار مداوم دیده می‌شود.
volumeبرای کنترل شدت صدای پس‌زمینه در پیاده‌سازی قدیمی استفاده می‌شد.
balanceمشخص می‌کرد صدا چگونه میان کانال‌های چپ و راست تقسیم شود.

در مستندات تاریخی این عنصر، مقدار balance در محدوده -10000 تا +10000 تعریف شده بود؛ 0 حالت متعادل را نشان می‌داد و دو انتهای محدوده صدا را به کانال چپ یا راست هدایت می‌کردند.

این اتریبیوت‌ها بخشی از رفتار قدیمی bgsound هستند و نباید آن‌ها را قابلیت‌های استاندارد HTML امروزی در نظر گرفت. اگر چنین کدی را در یک سایت قدیمی پیدا کردید، ابتدا باید نقش هر اتریبیوت را تشخیص دهید و سپس برای رفتارهایی که هنوز لازم هستند، راهکار استاندارد امروزی را انتخاب کنید.

 

 

چرا نباید از bgsound در HTML امروزی استفاده کنیم؟

تگ bgsound فقط قابلیتی قدیمی نیست که استفاده از آن کمتر شده باشد؛ در HTML Standard فعلی این عنصر در دسته کاملاً منسوخ (entirely obsolete) و non-conforming قرار دارد. به بیان ساده، نویسندگان صفحات وب نباید از آن در HTML جدید استفاده کنند. برای آشنایی با عناصر مشابه و جایگزین‌های آن‌ها، مقاله تگ‌های منسوخ‌شده HTML مرجع مرتبط این موضوع است.

ممکن است مرورگرها برای سازگاری با برخی صفحات قدیمی هنوز کدهای Legacy را به شکلی پردازش کنند، اما چنین رفتاری نباید مبنای توسعه یک سایت جدید باشد. پردازش‌شدن یک کد قدیمی با استاندارد و قابل‌اتکا بودن آن یکسان نیست.

HTML Standard برای bgsound مستقیماً استفاده از audio را پیشنهاد می‌کند. بنابراین اگر در یک پروژه قدیمی با این عنصر روبه‌رو شدید، راه درست حفظ یا تکرار همان کد نیست؛ ابتدا باید مشخص کنید صدای موردنظر چه نقشی داشته و سپس همان نیاز را با امکانات استاندارد صوتی وب پیاده‌سازی کنید.

در نتیجه، شناخت تگ bgsound امروز بیشتر برای خواندن، نگهداری و مهاجرت کدهای قدیمی کاربرد دارد، نه برای نوشتن HTML جدید.

 

 

جایگزین bgsound چیست و چگونه کد قدیمی را تبدیل کنیم؟

جایگزین استاندارد تگ bgsound در HTML امروزی، تگ audio است. این عنصر برای قرار دادن محتوای صوتی در صفحه طراحی شده و برخلاف bgsound، بخشی از HTML استاندارد است.

فرض کنید در یک پروژه قدیمی چنین کدی وجود دارد:

				
					<bgsound src="music.mp3" loop="infinite">
				
			

اگر هدف پخش همان فایل صوتی همراه با تکرار آن باشد، یک پیاده‌سازی ساده و استاندارد می‌تواند چنین باشد:

				
					<audio src="music.mp3" loop controls></audio>
				
			

در این نسخه، src آدرس فایل صوتی را مشخص می‌کند و loop باعث می‌شود پس از رسیدن صدا به انتها، پخش دوباره از ابتدا شروع شود. وجود controls نیز کنترل‌هایی مانند پخش، مکث و تنظیم صدا را در اختیار کاربر قرار می‌دهد.

برای بررسی کامل ساختار و امکانات این عنصر می‌توانید آموزش تگ audio در HTML را مطالعه کنید.

 

آیا می‌توان صدای جایگزین را خودکار پخش کرد؟

تگ audio اتریبیوت autoplay نیز دارد:

				
					<audio src="music.mp3" loop autoplay></audio>
				
			

اما وجود autoplay به این معنی نیست که صدای قابل‌شنیدن حتماً پس از بازشدن صفحه پخش خواهد شد. مرورگرهای امروزی برای جلوگیری از پخش ناخواسته صدا، سیاست‌های Autoplay دارند و ممکن است پخش خودکار را تا زمان تعامل کاربر مسدود کنند.

به همین دلیل، عملکرد اصلی صفحه را نباید به موفقیت قطعی Autoplay وابسته کرد. در حالت معمول نیز بهتر است شروع و توقف پخش صدا در اختیار کاربر باشد.

همچنین همه قابلیت‌های bgsound معادل یک‌به‌یک در audio ندارند. برای مثال، volume و balance به همان شکلِ اتریبیوت‌های قدیمی bgsound روی عنصر audio تعریف نشده‌اند. اگر پروژه به کنترل برنامه‌نویسی‌شده صدا نیاز داشته باشد، می‌توان متناسب با نیاز از JavaScript و در سناریوهای پیشرفته‌تر از Web Audio API استفاده کرد.

بنابراین هنگام اصلاح یک پروژه Legacy، هدف نباید فقط تعویض:

<bgsound ...>

با:

<audio ...></audio>

باشد. ابتدا مشخص کنید صدای قدیمی چه نقشی در صفحه داشته است و سپس فقط رفتارهایی را که هنوز برای کاربر لازم هستند با امکانات استاندارد وب بازسازی کنید. در بسیاری از صفحات، دادن کنترل پخش به کاربر انتخاب مناسب‌تری از تلاش برای بازسازی صدای پس‌زمینه خودکار است.

 

 

جمع‌بندی

تگ bgsound بخشی از نسل قدیمی صفحات وب بود و برای پخش صدای پس‌زمینه استفاده می‌شد، اما امروز نباید آن را راهکاری برای HTML جدید در نظر گرفت. ارزش شناخت این تگ بیشتر زمانی مشخص می‌شود که یک پروژه Legacy را بررسی می‌کنید و باید بفهمید کد قدیمی چه رفتاری داشته است.

در چنین شرایطی، به‌جای حفظ bgsound باید نیاز واقعی صفحه—مانند پخش فایل صوتی، تکرار آن یا کنترل پخش—را مشخص کنید و همان رفتار را با audio و امکانات استاندارد وب بازسازی کنید. همچنین بهتر است پخش خودکار صدا را رفتاری تضمین‌شده فرض نکنید و تا جای ممکن کنترل پخش را در اختیار کاربر قرار دهید.

اگر می‌خواهید HTML را به‌صورت ساختارمند و بر اساس روش‌های امروزی یاد بگیرید، می‌توانید مسیر یادگیری را با دوره تخصصی HTML ادامه دهید.

سوالات متداول

خیر. تگ bgsound یک عنصر منسوخ HTML است و برای توسعه صفحات وب جدید نباید از آن استفاده شود. این تگ بیشتر زمانی اهمیت دارد که با کدهای قدیمی یا پروژه‌های Legacy سروکار داشته باشید.

جایگزین استاندارد bgsound، تگ audio است. با استفاده از audio می‌توان فایل صوتی را به صفحه اضافه کرد و قابلیت‌هایی مانند کنترل پخش و تکرار صدا را در اختیار کاربر قرار داد.

تگ audio از اتریبیوت autoplay پشتیبانی می‌کند، اما مرورگرهای امروزی ممکن است پخش خودکار صدای قابل‌شنیدن را تا زمان تعامل کاربر مسدود کنند. بنابراین نباید روی Autoplay به‌عنوان رفتاری تضمین‌شده حساب کرد.

در کدهای قدیمی، اتریبیوت‌هایی مانند src برای تعیین فایل صوتی، loop برای تکرار صدا، volume برای کنترل شدت صدا و balance برای تنظیم جهت صدا میان کانال‌های چپ و راست استفاده می‌شدند.

ابتدا باید مشخص کنید bgsound چه نقشی در صفحه داشته است؛ سپس فقط رفتارهای موردنیاز را با امکانات استاندارد وب، معمولاً با تگ audio و در صورت نیاز JavaScript، بازسازی کنید. صرفاً تعویض نام تگ همیشه معادل رفتار قبلی نیست.

چقدر این پست مفید بود؟

با یک کلیک، صدای خود را به گوش ما برسانید!

میانگین امتیاز کاربران / 5. تعداد نظر:

اولین باشید! نظر شما اهمیت دارد!

متاسفیم این پست برای شما مفید نبود.

اجازه دهید این پست را بهتر کنیم!

به ما بگویید چگونه می‌توانیم بهتر شویم!

ابوالفضل عنایتی - Abolfazl Enayati - bitamooz - بیت آموز

ابوالفضل عنایتی

بنیان‌گذار بیت‌آموز، طراح سایت وردپرس و مدرس طراحی وب

ابوالفضل عنایتی، بنیان‌گذار بیت‌آموز و مدرس طراحی وب است و از سال ۱۳۹۶ در حوزه تکنولوژی شروع و در حال حاضر در زمینه طراحی سایت، وردپرس، سئو و آموزش مهارت‌های وب فعالیت می‌کند. تمرکز او در بیت‌آموز بر تولید آموزش‌های کاربردی و پروژه‌محور برای ورود حرفه‌ای به دنیای وب است.

دیدگاهتان را بنویسید

سبد خرید شما
سبد خرید شما