Foundation ফ্রেমওয়ার্ক উন্নত animations এবং transitions সাপোর্ট করে, যা ওয়েবসাইটে ইন্টারঅ্যাকটিভ ইফেক্ট তৈরিতে ব্যবহৃত হয়। এটি ব্যবহারকারীদের জন্য এক দৃষ্টিনন্দন অভিজ্ঞতা তৈরি করে এবং ওয়েবসাইটের ব্যবহারযোগ্যতা উন্নত করে। Foundation এর CSS ক্লাস এবং JavaScript প্লাগইনগুলোকে ব্যবহার করে আপনি সহজেই এসব ইফেক্ট যুক্ত করতে পারেন। নিচে আমরা আলোচনা করবো animations এবং transitions এর মাধ্যমে কীভাবে ইন্টারঅ্যাকটিভ ইফেক্ট তৈরি করা যায়।
১. CSS Transitions
CSS transitions হল একটি জনপ্রিয় প্রযুক্তি, যার মাধ্যমে একটি স্টাইল পরিবর্তন করার সময় একটি ধীর বা দ্রুত পরিবর্তন (transition) তৈরি করা যায়। এটি ব্যবহারকারীর সাথে ইন্টারঅ্যাকশন হওয়ার সময় ওয়েবসাইটে একটি স্মুথ ট্রানজিশন তৈরি করে।
Transition ব্যবহার করার উদাহরণ:
<style>
.button {
background-color: #3498db;
color: white;
padding: 10px 20px;
border: none;
cursor: pointer;
transition: background-color 0.3s ease, transform 0.3s ease;
}
.button:hover {
background-color: #2980b9;
transform: scale(1.1);
}
</style>
<button class="button">Hover me!</button>
এখানে:
- transition: যখন ব্যবহারকারী বাটনের উপরে মাউস রাখবে (hover), বাটনের ব্যাকগ্রাউন্ড কালার এবং আকার ধীরে ধীরে পরিবর্তিত হবে।
- transform: এটি বাটনের আকার (scale) পরিবর্তন করে, ফলে এটি হোভার করার সময় একটু বড় হয়ে যাবে।
Foundation-এ Transition: Foundation এর button ক্লাসের জন্য ডিফল্ট ট্রানজিশন রয়েছে, তবে আপনি প্রয়োজনে এটি কাস্টমাইজ করতে পারেন।
২. CSS Animations
CSS Animations একটি শক্তিশালী টুল যা আপনাকে কোনো এলিমেন্টের জন্য অটোমেটিক্যালি পুনরাবৃত্তিমূলক বা এককালীন অ্যানিমেশন তৈরি করতে সাহায্য করে। আপনি keyframes ব্যবহার করে একাধিক স্টাইল পরিবর্তন নির্ধারণ করতে পারেন এবং তা নির্দিষ্ট সময়ে অ্যানিমেট করতে পারেন।
Animation ব্যবহারের উদাহরণ:
<style>
@keyframes example {
0% {
transform: translateX(0);
opacity: 0;
}
100% {
transform: translateX(300px);
opacity: 1;
}
}
.animated-element {
width: 100px;
height: 100px;
background-color: #e74c3c;
animation: example 2s ease-in-out infinite;
}
</style>
<div class="animated-element"></div>
এখানে:
- @keyframes: এটি একটি অ্যানিমেশন তৈরি করার জন্য ব্যবহৃত হয়, যা এলিমেন্টের প্রপার্টি পরিবর্তন করে।
- animation: এখানে অ্যানিমেশনটির নাম এবং সেটিংস দেওয়া হয়েছে।
- 2s: অ্যানিমেশনের সময়কাল ২ সেকেন্ড।
- ease-in-out: অ্যানিমেশন শুরুর দিকে ধীরে এবং শেষে দ্রুত হবে।
- infinite: অ্যানিমেশনটি একবারের পরিবর্তে অবিরত চলবে।
Foundation-এ Animations: Foundation এর কিছু কম্পোনেন্ট যেমন modals, tooltips, dropdowns ইত্যাদি পূর্বনির্ধারিত অ্যানিমেশন সহ আসে, তবে আপনি চাইলে কাস্টম অ্যানিমেশনও ব্যবহার করতে পারেন।
৩. Foundation এর Animations ব্যবহার
Foundation ফ্রেমওয়ার্ক কিছু বিশেষ JavaScript প্লাগইন সহ দেয় যা অ্যানিমেশন এবং ট্রানজিশনকে আরও ইন্টারঅ্যাকটিভ এবং ডাইনামিক করে তোলে। উদাহরণস্বরূপ, Reveal, Tooltip, Modal, এবং Dropdown এর মতো কম্পোনেন্টগুলোর জন্য অ্যানিমেশন রয়েছে।
Reveal Animation (Modal) উদাহরণ:
<button data-open="exampleModal1" class="button">Open Modal</button>
<div class="reveal" id="exampleModal1" data-reveal>
<h1>Modal Title</h1>
<p>This is a modal with animations.</p>
<button class="button" data-close aria-label="Close modal" type="button">Close</button>
</div>
<script>
$(document).foundation();
</script>
এখানে:
- data-reveal: Modal এর সাথে অ্যানিমেশন এবং ট্রানজিশন যুক্ত করার জন্য ব্যবহার করা হয়।
- data-open: মডালটি খোলার জন্য ব্যবহৃত হয়।
- data-close: মডালটি বন্ধ করার জন্য।
Foundation এর মডালগুলি সাধারণত fade-in বা slide-in অ্যানিমেশন সহ আসে।
৪. Hover Animations
অন্যান্য অ্যানিমেশনগুলির মতো hover animations ও খুব জনপ্রিয়। এগুলো মাউস হোভার করার সময় ইফেক্ট প্রদর্শন করতে ব্যবহৃত হয়, যেমন টেক্সট পরিবর্তন, বাটন ডিজাইন পরিবর্তন ইত্যাদি।
Hover Animation উদাহরণ:
<style>
.hover-effect {
background-color: #2ecc71;
padding: 15px;
border-radius: 5px;
text-align: center;
transition: background-color 0.3s ease, transform 0.3s ease;
}
.hover-effect:hover {
background-color: #27ae60;
transform: translateY(-5px);
}
</style>
<div class="hover-effect">
Hover over me!
</div>
এখানে:
- transition: ব্যাকগ্রাউন্ড কালার এবং ট্রান্সফর্ম প্রপার্টি ধীরে ধীরে পরিবর্তিত হয়।
- hover: মাউস হোভার করার সময় এলিমেন্টের ডিজাইন পরিবর্তন হয়।
৫. JavaScript-এ Animations
Foundation এর JavaScript প্লাগইনগুলি যেমন Motion UI, Dropdown, এবং Reveal আরও ডাইনামিক অ্যানিমেশন তৈরি করতে সাহায্য করে। Motion UI একটি প্লাগইন যা অ্যানিমেশন তৈরির জন্য প্রস্তুত করা হয়, যেখানে সহজেই ব্যবহারযোগ্য CSS ট্রানজিশন এবং অ্যানিমেশন রয়েছে।
Motion UI উদাহরণ:
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/motion-ui/2.1.3/motion-ui.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/motion-ui/2.1.3/motion-ui.min.js"></script>
<button id="animateButton" class="button">Click Me!</button>
<script>
document.getElementById('animateButton').addEventListener('click', function() {
this.classList.add('mui-animated', 'mui-bounce');
});
</script>
এখানে:
- motion-ui: এটি Foundation-এর জন্য একটি JavaScript লাইব্রেরি যা অ্যানিমেশন এবং ট্রানজিশন ইফেক্ট তৈরি করতে ব্যবহৃত হয়।
- mui-bounce: একটি প্রি-বিল্ট অ্যানিমেশন ক্লাস যা এলিমেন্টটিকে বাউন্স ইফেক্টের সাথে অ্যানিমেট করে।
Foundation ফ্রেমওয়ার্কে animations এবং transitions ব্যবহারের মাধ্যমে আপনি আপনার ওয়েবসাইটে ইন্টারঅ্যাকটিভ এবং দৃষ্টিনন্দন ইফেক্ট তৈরি করতে পারেন। এগুলো ব্যবহারকারী অভিজ্ঞতা উন্নত করতে সাহায্য করে এবং ডিজাইনের সৌন্দর্য বাড়ায়। Foundation এর CSS, JavaScript প্লাগইন, এবং Motion UI এর মাধ্যমে আপনি সহজেই স্লাইড, ফেড, বাউন্স, এবং অন্যান্য অ্যানিমেশন তৈরি করতে পারেন।
Read more