Full Stack Camp
145 subscribers
8 photos
16 files
89 links
Fullstack Camp | Learn. Build. Launch.
Welcome to the ultimate tech adventure!
Join us for a hands-on journey through HTML, CSS, JavaScript, React, Node.js, Express & MongoDB — all in one place.
Download Telegram
          🎉 Hello Campers! 👋

Welcome to your Week 2 Day 6 CSS Lesson — our last day in the CSS basics journey! 💻

Today we’ll cover some magic-like features that will make your websites come alive — like hover animations, icon styles, image control, and even how to use YouTube or LinkedIn icons on your pages! 😍🎥💼

🧠 What We’ll Learn Today:
🔹 Transitions & Animations
🔹 Transformations
🔹 Object-Fit
🔹 Overflow
🔹 Shadows
🔹 Icons (Font Awesome, Emojis, YouTube, LinkedIn...)

🎬 1. CSS Transitions (Make things move smoothly!)

Transitions let you animate changes like color or size when you hover or click. This allows smooth changes from one state to another.
🧪 Syntax:
selector { transition: property duration ease; }
Example:

<style>
.button {
     background: blue;
     color: white;
     padding: 10px;
     transition: background 0.4s ease; }
.button:hover {
      background: darkblue; }
</style>


<button class="button">Hover Me 🎯</button>


➝Note: you can use all if you want all.properties to transition.


transition : all 0.3s ease;


🌀 2. CSS Animations (Make things move even without hover)
➤Animation gives you more control over movement or effects that repeat or run on load.

With @keyframes, you can animate elements over time, even looping!

Example:


<style>
@keyframes bounce {
     0% { transform: translateY(0); }
    50% { transform: translateY(-30px); }
    100% { transform: translateY(0); } }
      .bouncer {
          width: 100px;
          height: 100px;
          background: tomato;
          animation: bounce 1s infinite; }
</style>


<div class="bouncer"></div>


🧾 Use this to make bouncing buttons, loading dots, etc.

🔁 3. Transformations
Use to move, rotate, scale, or skew an element!

Common Examples:

/*Move*/
.move { transform: translateX(100px); }
/*Rotate*/
.rotate { transform: rotate(360deg); }
/*Scale*/
.scale { transform: scale(1.5); }
/*Skew*/
.skew { transform: skew(20deg); }

Example with hover:

<style>
.card:hover {
     transform: scale(1.2) rotate(5deg);
     transition: transform 0.3s ease-in-out; }
</style>



🖼️ 4. Object-Fit (Control how images appear in boxes)

Use object-fit when an image or video doesn’t fit nicely. It is often used with width and height.

Example:


<img src="https://via.placeholder.com/400x300"
style="width: 200px; height: 150px; object-fit: cover;">



🔹 Values:
➺cover – fills, may crop
➺contain – fits, no crop
➺fill – stretches
➺none – no resize
➺scale-down – uses the smallest between none or contain

🌊 5. Overflow (Handle content that doesn't fit)
Use when text or content gets too big for the box.

Example


<style>
.box {
     width: 200px;
     height: 100px;
     overflow: auto;
     border: 1px solid black; }
</style>


<div class="box"> This is a long content. It will scroll if it's too much... </div>


🔸 Values:
➺visible (default)--content spills out
➺hidden--extra content is clipped
➺scroll-- scrollbar always shows
➺auto-- scrollbar only if needed

🌫️ 6. Shadow Effects

➤ Box Shadows:
box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.3);

Example


<style>
.box {
     width: 200px;
     height: 100px;
     background: white;
     box-shadow: 2px 2px 8px rgba(0,0,0,0.2); }
</style>


<div class="box">I'm popping out! 🎈</div>


➤ Text Shadows:

text-shadow: 1px 1px 4px gray;
🧩 7. Adding Icons to Your Website

Option 1: Emojis (Fastest & simplest)
Just adding them like text.

<p>📞 Call Us | 💌 Message | 📚 Courses</p>

Option 2: Font Awesome Icons

🌟 Font Awesome gives you professional-looking icons like:
🔴 YouTube
🔵 LinkedIn
🖥️ Desktop
📧 Email

💡 How to Use Font Awesome:

Add this in your<head>:

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css">


Use icons like this:

<i class="fa-brands fa-youtube"></i> Youtube
<i class="fa-brands fa-linkedin"></i>  LinkedIn
<i class="fa-solid fa-envelope"></i> Email
<i class="fa-solid fa-phone"></i>  Call


Style them with CSS:

i {
      font-size: 24px; color: #ff0000;
      margin-right: 10px; }



Example

<i class="fa-brands fa-youtube" style="color: red;"></i>
<i class="fa-brands fa-linkedin" style="color: #0A6
6C2;"></i>


🧠Summary
Today , we learned:
1. Transition – Smooth hover/click changes
2. Animation – Moving objects/loops
3. Transform – Move, scale, rotate things
4. Object-Fit – Fix image shapes
5. Overflow – Scroll or hide extra content
6. Shadow – Make items "pop"
7. Icons – Add fun or brand images! 😍

Campers! 🎒 You’ve now learned all the visual power tools of CSS! You can make your websites look fun, interactive, and modern now! 🎨
Don't forget Practicing. As they say "Perfect practice makes perfect"😁
🎯 Today's Challenge!

Hey hey team! 👋
Before we wrap up CSS week and jump into the wild world of JavaScript 💻 — let’s polish our past works and turn them into stunning, interactive pages!

🧠 Challenge:
Go back to ALL the HTML files we created so far (cover page, scholarship form, course page, etc.) and apply everything we’ve learned in CSS:

Use:

➤Flexbox or Grid layouts

➤Transitions & animations

➤Shadows and transformations

➤Object-fit for images

➤Stylish icons (Font Awesome or emojis)

➤Hover effects and responsive layouts


🎨 Decorate and transform your work into a masterpiece! 💖
Then share your styled pages, invite a friend to join the camp, and as always…

✌️ Stay well and keep coding! 💻
👋 Hey Campers!

💪 Welcome to Week 2: Challenge Time!

You’ve been working hard, learning all the major CSS tools — now it's time to build real websites from scratch and show what you’ve learned!
Each of these challenges is like a mini-job you'd be given by a real client or boss. Do your best, be creative, and most importantly — have fun! 🎨

💪 Challenge 1: Fitness Trainer Website

🎯 Your Mission:
Design a simple but energetic Fitness Trainer Website that helps people know more about the trainer, available classes, and book sessions.
💼 Include These:
Home section with a welcome message + trainer photo
About section (trainer bio, years of experience, certifications)
Class Schedule (you can use a simple table or a flex/grid layout)
Gallery of workout images (use object-fit)
Icons for services (dumbbells, yoga, diet)
Contact form (for booking sessions)
Responsive layout that works on mobile!
🎁 Bonus: Add hover effects, transitions on buttons, or simple entrance animations!

👗 Challenge 2: Fashion Brand Landing Page

🎯 Your Mission:
Design a beautiful, stylish Landing Page for a Fashion Brand. This is a marketing-focused page to promote the newest collection.

💼 Include These:
Hero section with a stylish background + slogan like “Style that speaks”
Featured products section (use flex or grid to display clothes or accessories)
"Shop Now" button with transition hover effect
Gallery of images with hover zoom effect (transform: scale())
Testimonials from customers
Footer with social media icons (LinkedIn, Instagram, YouTube)
Mobile responsive version for phones!
🎁 Bonus: Add animations like fade-ins for product cards or an animated title.

💼 Challenge 3: Job Listing Website

🎯 Your Mission:
Build a functional-looking Job Listing Website (like EthioJobs or Glassdoor) where users can view and apply to open jobs.

💼 Include These:
Navigation bar with links: Home, Jobs, About, Contact
Job Cards (use flex or grid) showing:
Job Title
Company Name
Short Description
Apply Now button
Filter section for categories (e.g., Tech, Education, NGO)
Job detail page (optional): Show full job description
Apply form with name, email, CV upload (just input, no backend)
Icons for job categories
Sticky navbar or filter
Responsive layout for mobile
🎁 Bonus: Add animations when hovering on job cards!

📢 Don’t Forget to:
👉 Share your amazing work!
👉 Invite others who want to join the code journey!
👉✌️ And always stay warm, strong, and well! 💪🔥
Review exercises on CSS:
2. In position: absolute;, what is the position relative to?
Anonymous Quiz
25%
a) Body
38%
b) Screen
38%
c) Closest positioned ancestor
0%
d) The next sibling
5.Which unit scales with the width of the screen?
Anonymous Quiz
50%
a) px
0%
b) em
33%
c) rem
17%
d) vw
6.What is the default display of a <div>?
Anonymous Quiz
14%
a) inline
86%
b) block
0%
c) inline-block
0%
d) flex
8. Which selector will target all <p> inside a div?
Anonymous Quiz
67%
a) div p {}
0%
b) p div {}
17%
c) .div > p
17%
d) p > div {}
9.Which color format is valid in CSS?
Anonymous Quiz
0%
a) rgb(255, 0, 0)
0%
b) rgba(0, 0, 0, 1)
100%
d) All of the above
11.Which rule targets all buttons inside a form?
Anonymous Quiz
0%
a) form + button
60%
b) form > button
20%
c) form button
20%
d) form:button
12.Which of these is used in responsive design?
Anonymous Quiz
50%
0%
50%