ساخت منوی شناور (Floating Menu)، در CSS
منوی شناور (Floating Menu)، به منویی گفته می شود که اگر کاربر، به بالا یا پایین صفحه برود (با اسکرول بار)، محل آن منو در صفحه، ثابت باشد.
برای آشنایی با نحوه کدنویسی برای ساخت یک منوی شناور (Floating Menu)، به مثال زیر توجه کنید :
مهمترین بخش کدها، مشخصه CSS زیر می باشد که باعث می شود محل منو، ثابت باقی بماند :
همچنین، کدهای زیر، موقعیت نسبی منو، نسبت به کناره های پنجره نمایش دهنده صفحه، را تعیین کرده است :
نتیجه :
در کادر بالا، چنانچه اسکرول بار را به بالا یا پایین ببرید، محل منو تغییری نمی کند و ثابت خواهد بود.
باسلام!
من از این آموزش سایتتون هم خیلی استفاده کردم. ضمن تشکر صمیمانه از مدیریت کلیدستان بابت مطالب مفید و کاربری اش، سوالی درباره ساخت بلاک شناور عمودی داشتم که امیدوارم پاسخ بفرمائید:
1. چرا با وجود اینکه کدها رو به درستی تنظیم و به ویرایش قالبم انتقال دادم، اما منوی شناور نشان داده نمیشه بلکه هرجایی میذارم همانجا با اسکرول صفحه جابجا میشه و ثابت نمیمونه؟ خیلی گشتم که با کدام کد یا اسکریپت قبلی تداخل داره اما چیزی خاصی نتونستم پیداکنم. هرچی هم شک داشتم از قالب حذف کردم و توفیقی نداشتم با مرورگرها و سیستمهای مختلف هم چک میکردم تا مطمئن شدم کد سالمه و مشکلی نداره و فقط در این صفحه نمی تونم استفاده کنم. لطفا در این زمینه راهنمایی ام بفرمائید. خیلی ممنون میشم!
آدرس صفحه ای که از کد بلاک شناور در آن استفاده کردم:
سلام.
بنده نیز یک بار با این مشکل مواجه شدم.
یعنی کدی که نوشته شده بود را اگر در یک صفحه ساده آزمایش می کردم، به درستی عمل می کرد، اما زمانی که آن را در بخشی از قالب وب سایت قرار می دادم، به همراه اسکرول صفحه، حرکت می کرد.
در آن زمان، چون حجم کدهای قالب وب سایت بسیار زیاد می بود، یافتن بخشی که بر روی آن اثر می گذاشت سخت بود و تازه بعد از یافتن آن بخش مشکل زا، به دلیل اهمیت آن و اثری که بر روی کل وب سایت داشت، امکان حذف یا تغییر آن وجود نداشت.
در واقع منوی شناوری (Floating Menu) که طراحی شده بود، به عنوان زیرمجموعه ای از آن بخش مشکل زا در میان کدها قرار می گرفت. بنابراین بنده از این راه حل استفاده کردم که منوی شناور (Floating Menu) را دقیقا در بعد از تگ body صفحه (تگ body شروع) قرار دادم تا به صورت زیرمجموعه آن بخش مشکل زا قرار نگیرد :
یا اینکه می توانید آن را دقیقا در قبل از تگ body پایان صفحه قرار دهید :
در کل مهم این است که دیگر زیرمجموعه بخش مشکل زا قرار نگیرد.
اگر قصد دارید که دقیقا بعد از تگ body شروع صفحه قرار گیرد، هم می توانید به صورت عادی کدها را در آن قسمت از صفحه قرار دهید و هم اینکه می توانید یک کد JavaScript در اواخر کدهای صفحه بنویسید که محتوای مورد نظر شما را در آن بخش از صفحه قرار دهد (مثلا در مواردی که اطلاعات مربوط به آن منوی شناور (Floating Menu)، تا زمان اجرای کدها تا اواخر صفحه، به دست نیامده است).