CSS Lessons

CSS Icons

Icons छोटे होते हैं लेकिन वेबसाइट की visual beauty, navigation और user experience को बहुत बेहतर बनाते हैं। जैसे कि — 🔍 (search), 🏠 (home), 📞 (contact), 🛒 (cart) आदि। तो इस लेसन में आप सीखेंगे कि CSS और external libraries की मदद से कैसे website में सुंदर और responsive icons जोड़ते हैं

Icons क्या होते हैं?

Icons छोटे ग्राफिकल symbols होते हैं जो किसी action या meaning को दर्शाते हैं। जैसे — Home, Email, User, Download आदि।

Example:

  • Home Icon 🏠
  • Email Icon ✉️
  • Phone Icon 📞
  • Search Icon 🔍

Icons Add करने के तरीके

CSS में icons जोड़ने के 3 सबसे popular तरीके हैं

तरीका (Method) Description (विवरण) HTML Code (HTML कोड)
1. Unicode / Emoji Icons Directly HTML से (सीधे HTML से) 🧱या🧱(जैसे)
2. Icon Fonts (जैसे Font Awesome) External library से (बाहरी लाइब्रेरी से) <i class="fa fa-diamond"></i>(यदि Font Awesome लिंक हो)
3. SVG Icons Vector graphics फॉर्म में (वेक्टर ग्राफिक्स फॉर्म में) <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect></svg>

Unicode / Emoji Icons (Simple तरीका)

आप HTML में सीधे Unicode या emoji का use कर सकते हैं। Example:

<p>Home 🏠</p>
<p>Phone 📞</p>
<p>Mail ✉️</p>

या CSS के जरिए भी:

.icon::before {
  content: "\260E"; /* Unicode for Phone symbol ☎ */
}
<p class="icon"> Call Us</p>

यह lightweight तरीका है, लेकिन limited icons तक ही।

Font Awesome Icons (सबसे popular तरीका)

Font Awesome एक free library है जिसमें हजारों icons मिलते हैं। Website: https://fontawesome.com

Step-by-Step Setup:

Step 1: HTML के <head> में यह link जोड़ें

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


<i class="fa-solid fa-house"></i> Home <i class="fa-solid fa-user"></i> Profile <i class="fa-solid fa-phone"></i> Call <i class="fa-solid fa-envelope"></i> Mail

ये सभी Font Awesome के predefined classes हैं।

Icon Customize करना (CSS से)

आप icon का size, color, hover effect सब बदल सकते हैं:

i {
  color: #0077cc;
  font-size: 24px;
  margin-right: 8px;
}

i:hover {
  color: orange;
  transform: scale(1.1);
  transition: 0.3s;
}

Example – Social Media Icons

<style>
.social i { font-size: 25px; color: #555; margin: 10px; transition: 0.3s; } .social i:hover { color: #0077cc; transform: translateY(-3px); } </style>

<div class="social"> <a href="#"><i class="fa-brands fa-facebook"></i></a> <a href="#"><i class="fa-brands fa-twitter"></i></a> <a href="#"><i class="fa-brands fa-instagram"></i></a> <a href="#"><i class="fa-brands fa-youtube"></i></a> </div>

ये icons interactive और responsive दोनों लगेंगे।

SVG Icons (Modern & Scalable तरीका)

SVG (Scalable Vector Graphics) icons high-quality और lightweight होते हैं। ये हर screen size पर perfect दिखते हैं।

Example:

<svg width="24" height="24" fill="blue" xmlns="http://www.w3.org/2000/svg">
  <path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"/>
</svg>

आप SVG files खुद बना सकते हैं या websites जैसे https://heroicons.com से download कर सकते हैं।

Bonus: Icons को Text के साथ Align करना

<style>
button { background: #0077cc; color: white; border: none; padding: 10px 20px; border-radius: 5px; font-size: 16px; display: flex; align-items: center; gap: 8px; cursor: pointer; } button i { font-size: 18px; } </style>

<button><i class="fa-solid fa-download"></i> Download</button>

Result: एक सुंदर download बटन जिसमें icon perfectly aligned होगा

Quick Recap

तरीका (Method) Example (उदाहरण) फायदे (Advantages)
Unicode &#x260E;or&#9746;(for $\text{\260E}$) Simple और **fast** (तेज)
Font Awesome <i class="fa-solid fa-user"></i> बहुत सारे **icons**
SVG (Scalable Vector Graphics) <svg>...</svg> **High quality** और **scalable** (स्केलेबल)

Common Mistakes

  • ❌ Font Awesome link लगाना भूल जाना
  • ✅ हमेशा <head> में सही CDN link जोड़ें
  • ❌ बहुत बड़े icons use करना
  • ✅ Responsive size (em, rem, %) रखें
  • ❌ Accessibility ignore करना
  • ✅ हर icon के साथ proper label या title दें

Pro Tips

  • Icons को semantic HTML elements के साथ रखें
  • Hover effects में subtle animation दें
  • SVG icons को inline रखें ताकि color आसानी से बदल सकें
  • Font Awesome के “duotone” icons modern look देते हैं

Practice Example – Mini Icon Set

<style>
.menu { display: flex; gap: 20px; font-size: 18px; } .menu i { color: #555; transition: 0.3s; } .menu i:hover { color: #0077cc; transform: scale(1.2); } </style>

<div class="menu"> <i class="fa-solid fa-house"></i> Home <i class="fa-solid fa-user"></i> Profile <i class="fa-solid fa-gear"></i> Settings <i class="fa-solid fa-right-from-bracket"></i> Logout </div>

Final Thoughts

Icons आपकी वेबसाइट की visual clarity और modern design को बढ़ाते हैं। चाहे Font Awesome हो या SVG — सही icon सही जगह पर आपकी website को professional बना देता है