रिस्पॉन्सिव टेस्ट टूल
यहाँ विज्ञापन दें
होम
EN
RTT टीम द्वारा संग्रहित

रिस्पॉन्सिव डिज़ाइन और परफॉर्मेंस के लिए डेवलपर टिप्स

व्यावहारिक, कॉपी-पेस्ट-तैयार HTML, CSS, JavaScript, परफॉर्मेंस और एक्सेसिबिलिटी टिप्स। चाहे आप डेवलपर्स के लिए हमारे मुफ़्त व्यूपोर्ट सिम्युलेटर का उपयोग कर रहे हों, CSS ब्रेकपॉइंट ऑनलाइन चेक करने की कोशिश कर रहे हों, या यह पता लगा रहे हों कि आपकी वेबसाइट टैबलेट पर कैसी दिखती है — ये टिप्स आपके रिस्पॉन्सिव टेस्ट टूल वर्कफ़्लो के साथ पूरी तरह मेल खाते हैं। प्रत्येक टिप एक वास्तविक कोड उदाहरण के साथ आती है जिसे आप सीधे उपयोग कर सकते हैं।

30+ टिप्स
6 श्रेणियाँ
अपडेटेड: अप्रैल 2026
मोबाइल-केंद्रित
फ़िल्टर:
श्रेणी 01

HTML सर्वोत्तम अभ्यास

5 टिप्स

ठोस HTML हर शानदार वेबसाइट की नींव है। ये टिप्स आपको सिमेंटिक, मजबूत और भविष्य-प्रूफ मार्कअप लिखने में मदद करते हैं जिसे ब्राउज़र और स्क्रीन रीडर पसंद करते हैं।

HTML · इमेज
लेआउट शिफ्ट रोकने के लिए <img> पर हमेशा width और height का उपयोग करें
HTMLPerf

इमेज पर स्पष्ट width और height एट्रिब्यूट सेट करने से ब्राउज़र इमेज लोड होने से पहले सही जगह आरक्षित कर लेता है, जिससे क्यूमुलेटिव लेआउट शिफ्ट (CLS) — Google के Core Web Vitals में से एक — समाप्त हो जाती है।

HTML
<!-- ❌ खराब: इमेज लोड होने तक ब्राउज़र साइज़ नहीं जानता -->
<img src="hero.jpg" alt="हीरो इमेज">

<!-- ✅ अच्छा: स्थान तुरंत आरक्षित -->
<img src="hero.jpg"
     alt="हीरो इमेज"
     width="1200"
     height="630"
     loading="lazy">
CSS में aspect-ratio: auto के साथ संयोजित करें और ब्राउज़र CSS द्वारा इमेज का आकार बदलने पर भी स्वचालित रूप से सही अनुपात की गणना करेगा।
HTML · सिमेंटिक्स
प्रति पेज एक <h1> का उपयोग करें और हेडिंग पदानुक्रम को तार्किक रखें
HTMLA11y

ठीक से नेस्टेड हेडिंग्स के साथ बनाया गया एक दस्तावेज़ रूपरेखा सर्च इंजनों को आपकी सामग्री पदानुक्रम समझने और स्क्रीन रीडर उपयोगकर्ताओं को पेज को कुशलता से नेविगेट करने में मदद करता है।

HTML
<h1>पेज का शीर्षक (प्रति पेज एक)</h1>
  <h2>मुख्य अनुभाग</h2>
    <h3>उप-अनुभाग</h3>
    <h3>दूसरा उप-अनुभाग</h3>
  <h2>दूसरा मुख्य अनुभाग</h2>
HTML · लिंक
बाहरी लिंक में rel="noopener noreferrer" जोड़ें
HTML

target="_blank" के साथ नए टैब में लिंक खोलते समय, खोला गया पेज window.opener के माध्यम से आपके पेज तक पहुँच सकता है। rel="noopener noreferrer" जोड़ने से यह सुरक्षा भेद्यता रुक जाती है और रेफ़रर जानकारी भेजना भी बंद हो जाता है।

HTML
<!-- ❌ भेद्य -->
<a href="https://example.com" target="_blank">विज़िट करें</a>

<!-- ✅ सुरक्षित -->
<a href="https://example.com"
   target="_blank"
   rel="noopener noreferrer">विज़िट करें</a>
HTML · फ़ॉर्म
मोबाइल पर फ़ॉर्म UX बेहतर बनाने के लिए autocomplete एट्रिब्यूट का उपयोग करें
HTMLMobile

autocomplete एट्रिब्यूट ब्राउज़र और पासवर्ड मैनेजर को बताता है कि फ़ॉर्म फ़ील्ड्स को पहले से कैसे भरना है। यह मोबाइल फ़ॉर्म पूर्णता दर में नाटकीय रूप से सुधार करता है।

HTML
<input type="text"    autocomplete="given-name">
<input type="email"   autocomplete="email">
<input type="tel"     autocomplete="tel">
<input type="password" autocomplete="current-password">
<input type="text"    autocomplete="postal-code">
HTML · मेटा
बेहतर सोशल मीडिया शेयरिंग के लिए Open Graph टैग जोड़ें
HTML

Open Graph मेटा टैग नियंत्रित करते हैं कि Facebook, LinkedIn और Twitter/X जैसे सोशल मीडिया प्लेटफ़ॉर्म पर साझा किए जाने पर आपका पेज कैसा दिखता है। इनके बिना, प्लेटफ़ॉर्म बेतरतीब ढंग से सामग्री चुनते हैं।

HTML — <head>
<meta property="og:title"       content="पेज का शीर्षक">
<meta property="og:description"  content="संक्षिप्त विवरण">
<meta property="og:image"       content="https://yourdomain.com/og.jpg">
<meta property="og:url"         content="https://yourdomain.com/page">
<meta property="og:type"        content="website">
<!-- Twitter/X -->
<meta name="twitter:card"      content="summary_large_image">
श्रेणी 02

CSS टिप्स और ट्रिक्स

6 टिप्स

आधुनिक CSS अविश्वसनीय रूप से शक्तिशाली है। ये टिप्स लेआउट, कस्टम प्रॉपर्टीज और पैटर्न को कवर करते हैं जो आपका समय बचाते हैं और आपकी स्टाइलशीट को साफ रखते हैं।

CSS · लेआउट
CSS Grid से 2 लाइनों में कुछ भी पूरी तरह सेंटर करें
CSS

पोजीशनिंग हैक से लड़ना बंद करें। CSS Grid का place-items शॉर्टहैंड दो लाइनों में सामग्री को क्षैतिज और लंबवत दोनों तरह से सेंटर करता है — कोई calc नहीं, कोई ट्रांसफ़ॉर्म नहीं।

CSS
.center-everything {
  display: grid;
  place-items: center;
}

/* फ़ुल-पेज सेंटरिंग के लिए भी काम करता है */
body {
  display: grid;
  place-items: center;
  min-height: 100vh;
}
CSS · कस्टम प्रॉपर्टीज
बनाए रखने योग्य डिज़ाइन सिस्टम के लिए CSS कस्टम प्रॉपर्टीज का उपयोग करें
CSS

CSS कस्टम प्रॉपर्टीज (वेरिएबल्स) आपको अपने डिज़ाइन टोकन को एक बार परिभाषित करने और उन्हें हर जगह पुन: उपयोग करने देती हैं। वे रियल-टाइम में अपडेट भी होती हैं, जिससे डार्क मोड और थीमिंग तुच्छ हो जाते हैं।

CSS
:root {
  --color-primary: #6366f1;
  --color-bg: #ffffff;
  --radius-md: 12px;
  --spacing-md: 16px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --color-bg: #0d1117;
  }
}

.btn {
  background: var(--color-primary);
  border-radius: var(--radius-md);
  padding: var(--spacing-md);
}
CSS · टाइपोग्राफ़ी
फ़्लूड, रिस्पॉन्सिव टाइपोग्राफ़ी के लिए clamp() का उपयोग करें
CSSResponsive

clamp(min, preferred, max) फ़ॉन्ट आकारों को व्यूपोर्ट चौड़ाई के साथ सुचारू रूप से स्केल करने की अनुमति देता है — कोई मीडिया क्वेरीज़ आवश्यक नहीं। मध्य मान आमतौर पर एक vw इकाई होता है।

CSS
/* clamp(न्यूनतम, पसंदीदा, अधिकतम) */
h1 {
  font-size: clamp(1.8rem, 5vw, 3.5rem);
}

p {
  font-size: clamp(0.9rem, 2vw, 1.1rem);
  line-height: 1.7;
  max-width: 65ch; /* इष्टतम पठन चौड़ाई */
}
CSS · स्क्रॉल
एंकर लिंक के लिए स्मूथ स्क्रॉलिंग और scroll-margin
CSSUX

वैश्विक रूप से स्मूथ स्क्रॉलिंग सक्षम करें और यह सुनिश्चित करने के लिए एंकर टारगेट पर scroll-margin-top का उपयोग करें कि स्टिकी हेडर स्क्रॉल की जा रही सामग्री को ओवरलैप न करें।

CSS
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

/* स्टिकी हेडर के लिए ऑफ़सेट (जैसे 70px लंबा) */
[id] {
  scroll-margin-top: 90px;
}
हमेशा scroll-behavior: smooth को prefers-reduced-motion: no-preference मीडिया क्वेरी में रैप करें — कुछ उपयोगकर्ता एनिमेटेड स्क्रॉलिंग से मोशन सिकनेस का अनुभव करते हैं।
CSS · लेआउट
सेल्फ-हीलिंग कार्ड लेआउट के लिए CSS Grid auto-fill का उपयोग करें
CSSResponsive

auto-fill + minmax() पैटर्न एक ऐसा ग्रिड बनाता है जो उपलब्ध स्थान के आधार पर कॉलम की संख्या को स्वचालित रूप से समायोजित करता है — कोई मीडिया क्वेरीज़ आवश्यक नहीं।

CSS
.card-grid {
  display: grid;
  grid-template-columns: repeat(
    auto-fill,
    minmax(280px, 1fr)
  );
  gap: 24px;
}
/* मोबाइल पर 1 कॉलम → 2 → 3 → 4 स्वचालित रूप से */
CSS · विज़िबिलिटी
outline हटाने के बजाय :focus-visible का उपयोग करें
CSSA11y

वैश्विक रूप से कभी भी outline: none न करें — यह कीबोर्ड नेविगेशन को तोड़ता है। केवल कीबोर्ड उपयोगकर्ताओं के लिए फ़ोकस रिंग दिखाने के लिए :focus-visible का उपयोग करें, जिससे माउस उपयोगकर्ताओं के लिए डिज़ाइन साफ रहे।

CSS
/* ❌ ऐसा कभी न करें */
* { outline: none; }

/* ✅ माउस के लिए छुपाएँ, कीबोर्ड के लिए दिखाएँ */
:focus:not(:focus-visible) {
  outline: none;
}
:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 3px;
  border-radius: 4px;
}
श्रेणी 03

JavaScript टिप्स

5 टिप्स

इन आधुनिक पैटर्न और ब्राउज़र API के साथ क्लीनर, अधिक परफ़ॉर्मेंट JavaScript लिखें।

JS · API
लेज़ी लोडिंग और स्क्रॉल इफ़ेक्ट के लिए IntersectionObserver का उपयोग करें
JSPerf

scroll इवेंट (जो प्रति सेकंड सैकड़ों बार फ़ायर होता है) सुनने के बजाय, केवल तभी प्रतिक्रिया करने के लिए IntersectionObserver API का उपयोग करें जब एलिमेंट्स व्यूपोर्ट में प्रवेश करते हैं या बाहर निकलते हैं।

JavaScript
const observer = new IntersectionObserver(
  (entries) => {
    entries.forEach(entry => {
      if (entry.isIntersecting) {
        entry.target.classList.add('visible');
        observer.unobserve(entry.target); // देखना बंद करें
      }
    });
  },
  { rootMargin: '0px 0px -50px 0px' }
);

document.querySelectorAll('.animate-on-scroll')
  .forEach(el => observer.observe(el));
JS · परफॉर्मेंस
परफॉर्मेंस हिट से बचने के लिए resize और input इवेंट्स को डीबाउंस करें
JSPerf

resize और input जैसे इवेंट्स बहुत तेज़ी से फ़ायर होते हैं। डीबाउंसिंग तब तक निष्पादन में देरी करता है जब तक उपयोगकर्ता इंटरैक्ट करना बंद नहीं कर देता, जिससे अनावश्यक कार्य रुक जाता है।

JavaScript
function debounce(fn, delay = 300) {
  let timer;
  return (...args) => {
    clearTimeout(timer);
    timer = setTimeout(() => fn(...args), delay);
  };
}

// उपयोग
window.addEventListener('resize',
  debounce(() => {
    recalculateLayout();
  }, 200)
);
JS · API
कॉपी-टू-क्लिपबोर्ड बटन के लिए Clipboard API का उपयोग करें
JSUX

आधुनिक navigator.clipboard API प्रॉमिस-आधारित है और पुराने document.execCommand('copy') हैक की तुलना में बहुत क्लीनर है।

JavaScript
async function copyToClipboard(text) {
  try {
    await navigator.clipboard.writeText(text);
    showToast('कॉपी हो गया!');
  } catch (err) {
    console.error('कॉपी विफल:', err);
  }
}

// उपयोग
document.querySelector('.copy-btn')
  .addEventListener('click', () =>
    copyToClipboard('कॉपी करने के लिए टेक्स्ट')
  );
JS · स्टोरेज
एरर हैंडल करने वाले हेल्पर के साथ localStorage का सुरक्षित रूप से उपयोग करें
JS

localStorage प्राइवेट ब्राउज़िंग मोड में या स्टोरेज भर जाने पर थ्रो कर सकता है। इसे हमेशा try/catch हेल्पर में रैप करें।

JavaScript
const storage = {
  get(key, fallback = null) {
    try {
      const item = localStorage.getItem(key);
      return item ? JSON.parse(item) : fallback;
    } catch { return fallback; }
  },
  set(key, value) {
    try {
      localStorage.setItem(key, JSON.stringify(value));
      return true;
    } catch { return false; }
  }
};

storage.set('theme', 'dark');
const theme = storage.get('theme', 'light');
JS · मीडिया
JavaScript में उपयोगकर्ता की reduced-motion प्राथमिकता का पता लगाएँ
JSA11y

JavaScript-चालित एनिमेशन (जैसे कैनवस, GSAP) के लिए, उपयोगकर्ता की prefers-reduced-motion सेटिंग की जाँच करें और तदनुसार एनिमेशन को सरल बनाएँ या अक्षम करें।

JavaScript
const prefersReduced = window
  .matchMedia('(prefers-reduced-motion: reduce)')
  .matches;

if (!prefersReduced) {
  startAnimations();
} else {
  showStaticFallback();
}
श्रेणी 04

परफॉर्मेंस टिप्स

5 टिप्स

तेज़ वेबसाइटें उच्च रैंक करती हैं, बेहतर रूपांतरित होती हैं और उपयोगकर्ताओं को खुश रखती हैं। ये टिप्स वेब परफॉर्मेंस के लिए सबसे बड़ी जीत को कवर करते हैं।

परफॉर्मेंस · फ़ॉन्ट्स
Google Fonts के लिए font-display: swap और preconnect का उपयोग करें
Perf

font-display: swap के बिना, ब्राउज़र कस्टम फ़ॉन्ट लोड होने तक टेक्स्ट छुपाते हैं (FOIT)। इसके साथ, सिस्टम फ़ॉन्ट तुरंत दिखाया जाता है, फिर स्वैप किया जाता है — जिससे Largest Contentful Paint (LCP) में काफी सुधार होता है।

HTML — <head>
<!-- चरण 1: preconnect -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>

<!-- चरण 2: URL में &display=swap जोड़ें -->
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap"
      rel="stylesheet">
परफॉर्मेंस · इमेज
<picture> फ़ॉलबैक के साथ आधुनिक इमेज फ़ॉर्मेट सर्व करें
PerfHTML

WebP और AVIF इमेज समान गुणवत्ता वाले JPEG और PNG की तुलना में काफी छोटी होती हैं। पुराने ब्राउज़रों के लिए JPEG फ़ॉलबैक के साथ आधुनिक फ़ॉर्मेट सर्व करने के लिए <picture> एलिमेंट का उपयोग करें।

HTML
<picture>
  <source srcset="hero.avif" type="image/avif">
  <source srcset="hero.webp" type="image/webp">
  <img src="hero.jpg"
       alt="हीरो इमेज"
       width="1200" height="630"
       loading="lazy">
</picture>
परफॉर्मेंस · स्क्रिप्ट्स
गैर-महत्वपूर्ण स्क्रिप्ट्स को defer या async के साथ लोड करें
PerfHTML

नियमित <script> टैग HTML पार्सिंग को ब्लॉक करते हैं। defer पार्सिंग पूर्ण होने के बाद स्क्रिप्ट चलाता है (क्रम में)। async स्क्रिप्ट डाउनलोड होते ही चलाता है (क्रम गारंटीड नहीं)।

HTML
<!-- रेंडरिंग ब्लॉक करता है ❌ -->
<script src="app.js"></script>

<!-- DOM के बाद क्रम में चलता है ✅ (अधिकांश स्क्रिप्ट के लिए उपयोग करें) -->
<script src="app.js" defer></script>

<!-- तैयार होते ही तुरंत चलता है ✅ (एनालिटिक्स, विज्ञापन) -->
<script src="analytics.js" async></script>
परफॉर्मेंस · CSS
GPU-त्वरित एनिमेशन के लिए will-change का संयम से उपयोग करें
PerfCSS

transform और opacity को एनिमेट करने पर टिके रहें — वे बिना लेआउट या पेंट ट्रिगर किए GPU कंपोजिटर थ्रेड पर चलते हैं। will-change केवल तभी जोड़ें जब आप प्रोफ़ाइल करें और वास्तविक लाभ देखें।

CSS
/* ❌ लेआउट ट्रिगर करता है (महंगा) */
.bad { transition: width 0.3s, top 0.3s; }

/* ✅ GPU-कंपोजिटेड (सस्ता) */
.good { transition: transform 0.3s, opacity 0.3s; }

/* संयम से उपयोग करें, केवल जटिल एनिमेशन से पहले */
.modal-enter { will-change: transform; }
.modal-entered { will-change: auto; } /* बाद में रीसेट करें */
परफॉर्मेंस · रिसोर्सेज
फ़ोल्ड के ऊपर क्रिटिकल एसेट्स को प्रीलोड करें
PerfHTML

ब्राउज़र को CSS या JS में खोजे जाने से पहले क्रिटिकल रिसोर्सेज को जल्दी प्राप्त करने के लिए कहने के लिए <link rel="preload"> का उपयोग करें। हीरो इमेज, क्रिटिकल फ़ॉन्ट्स और मुख्य स्क्रिप्ट्स के लिए आदर्श।

HTML — <head>
<!-- हीरो इमेज प्रीलोड करें (LCP एलिमेंट) -->
<link rel="preload" as="image"
      href="hero.webp" fetchpriority="high">

<!-- क्रिटिकल फ़ॉन्ट प्रीलोड करें -->
<link rel="preload" as="font"
      href="font.woff2" type="font/woff2"
      crossorigin>
श्रेणी 05

एक्सेसिबिलिटी टिप्स

5 टिप्स

एक्सेसिबिलिटी एक चेकलिस्ट नहीं है — यह अच्छा डिज़ाइन है। ये टिप्स आपकी साइटों को स्क्रीन रीडर उपयोगकर्ताओं और कीबोर्ड नेविगेटर्स सहित सभी के लिए उपयोग करने योग्य बनाने में मदद करते हैं।

A11y · ARIA
केवल-आइकन बटनों के लिए aria-label का उपयोग करें
A11yHTML

जिन बटनों में केवल एक आइकन होता है, उनमें स्क्रीन रीडर के लिए घोषित करने के लिए कोई दृश्यमान टेक्स्ट नहीं होता। वर्णनात्मक लेबल प्रदान करने के लिए aria-label जोड़ें।

HTML
<!-- ❌ स्क्रीन रीडर कहता है "बटन" -->
<button><i class="fa-solid fa-times"></i></button>

<!-- ✅ स्क्रीन रीडर कहता है "डायलॉग बंद करें" -->
<button aria-label="डायलॉग बंद करें">
  <i class="fa-solid fa-times" aria-hidden="true"></i>
</button>
A11y · भाषा
हमेशा <html> पर lang एट्रिब्यूट घोषित करें
A11yHTML

lang एट्रिब्यूट स्क्रीन रीडर को बताता है कि किस भाषा का उपयोग करना है, CSS में सही हाइफ़नेशन सक्षम करता है, और अनुवाद टूल को सामग्री भाषा की पहचान करने में मदद करता है। RTL भाषाओं के लिए, dir="rtl" भी जोड़ें।

HTML
<!-- अंग्रेज़ी -->
<html lang="en">

<!-- अरबी (RTL) -->
<html lang="ar" dir="rtl">

<!-- फ़्रेंच -->
<html lang="fr">
A11y · रंग
टेक्स्ट के लिए न्यूनतम 4.5:1 कंट्रास्ट अनुपात सुनिश्चित करें
A11yCSS

WCAG 2.1 AA के अनुसार सामान्य टेक्स्ट के लिए कम से कम 4.5:1 कंट्रास्ट अनुपात और बड़े टेक्स्ट (18px+ बोल्ड या 24px+ नियमित) के लिए 3:1 आवश्यक है। शिपिंग से पहले कंट्रास्ट चेकर का उपयोग करें।

बेहतरीन मुफ़्त टूल: WebAIM कंट्रास्ट चेकर webaim.org/resources/contrastchecker/ पर या Colour Contrast Analyser डेस्कटॉप ऐप इंस्टॉल करें। Chrome DevTools कलर पिकर में कंट्रास्ट अनुपात भी दिखाता है।
CSS — उदाहरण
/* ❌ #6b7280 on #fff = 4.48:1 (छोटे टेक्स्ट के लिए AA विफल) */
.muted { color: #6b7280; background: #fff; }

/* ✅ #4b5563 on #fff = 7.0:1 (AA और AAA पास) */
.muted { color: #4b5563; background: #fff; }
A11y · स्क्रीन रीडर
दृष्टिगत रूप से छिपे लेकिन एक्सेसिबल टेक्स्ट के लिए .sr-only का उपयोग करें
A11yCSS

कभी-कभी आपको ऐसे टेक्स्ट की आवश्यकता होती है जिसे केवल स्क्रीन रीडर ही सुन सकें — जैसे स्किप-टू-कंटेंट लिंक या विज़ुअल एलिमेंट के लिए लेबल। .sr-only यूटिलिटी क्लास इसे एक्सेसिबल रखते हुए दृष्टिगत रूप से छुपा देती है।

CSS + HTML
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

<!-- स्किप लिंक उदाहरण -->
<a href="#main" class="sr-only">सामग्री पर जाएँ</a>
A11y · कीबोर्ड
मोडल और डायलॉग के अंदर फ़ोकस ट्रैप करें
A11yJS

जब कोई मोडल खुला हो, तो कीबोर्ड फ़ोकस उसी के भीतर सीमित होना चाहिए। अन्यथा Tab ओवरले के पीछे के एलिमेंट्स पर फ़ोकस करेगा — जिससे मोडल कीबोर्ड उपयोगकर्ताओं के लिए अनुपयोगी हो जाएगा।

JavaScript
function trapFocus(modal) {
  const focusable = modal.querySelectorAll(
    'a, button, input, select, textarea, [tabindex]:not([tabindex="-1"])'
  );
  const first = focusable[0];
  const last = focusable[focusable.length - 1];

  modal.addEventListener('keydown', e => {
    if (e.key !== 'Tab') return;
    if (e.shiftKey ? document.activeElement === first
                   : document.activeElement === last) {
      e.preventDefault();
      (e.shiftKey ? last : first).focus();
    }
  });
  first.focus();
}
श्रेणी 06

रिस्पॉन्सिव और मोबाइल टिप्स

4 टिप्स

मोबाइल ट्रैफ़िक प्रमुख है। ये टिप्स सुनिश्चित करते हैं कि आपके डिज़ाइन हर स्क्रीन साइज़ पर खूबसूरती से काम करें — 320px फ़ोन से लेकर 4K मॉनिटर तक।

रिस्पॉन्सिव · मेटा
सही व्यूपोर्ट मेटा टैग का उपयोग करें
MobileHTML

व्यूपोर्ट मेटा टैग के बिना, मोबाइल ब्राउज़र ~980px डेस्कटॉप चौड़ाई पर रेंडर करते हैं और फिर ज़ूम आउट करते हैं। उपयोगकर्ता स्केलिंग की अनुमति दें — इसे अक्षम करना एक बड़ी एक्सेसिबिलिटी बाधा है और ब्राउज़र ज़ूम को तोड़ता है।

HTML — <head>
<!-- ❌ उपयोगकर्ता ज़ूम अक्षम करता है (एक्सेसिबिलिटी उल्लंघन) -->
<meta name="viewport"
      content="width=device-width, initial-scale=1, user-scalable=no">

<!-- ✅ सही: 5× तक स्केलिंग की अनुमति देता है -->
<meta name="viewport"
      content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=5">
रिस्पॉन्सिव · टच
मोबाइल पर टैप टारगेट कम से कम 44×44px बनाएँ
MobileCSSA11y

Apple के ह्यूमन इंटरफ़ेस दिशानिर्देश और WCAG 2.5.5 न्यूनतम 44×44 CSS पिक्सेल टैप टारगेट की सलाह देते हैं। छोटे टारगेट उपयोगकर्ताओं को निराश करते हैं और गलत टैप का कारण बनते हैं। आप पैडिंग या छद्म-तत्वों का उपयोग करके दृश्य आकार बदले बिना क्लिक करने योग्य क्षेत्र का विस्तार कर सकते हैं।

CSS
/* दृश्य परिवर्तन के बिना टैप क्षेत्र का विस्तार करें */
.icon-btn {
  position: relative;
  width: 24px; height: 24px;
}
.icon-btn::before {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  min-width: 44px; min-height: 44px;
}
रिस्पॉन्सिव · RTL
RTL भाषा समर्थन के लिए लॉजिकल CSS प्रॉपर्टीज का उपयोग करें
RTLCSS

CSS लॉजिकल प्रॉपर्टीज जैसे margin-inline-start बजाय margin-left के दस्तावेज़ के लेखन मोड के आधार पर दिशा को स्वचालित रूप से फ़्लिप करती हैं — जिससे RTL समर्थन लगभग सहज हो जाता है।

CSS
/* भौतिक (RTL के लिए फ़्लिप नहीं होता) */
.icon { margin-right: 8px; }

/* लॉजिकल (RTL में स्वचालित रूप से फ़्लिप होता है) */
.icon { margin-inline-end: 8px; }

/* अधिक लॉजिकल प्रॉपर्टी उदाहरण */
.card {
  padding-inline: 16px;      /* बाएँ + दाएँ */
  padding-block: 12px;       /* ऊपर + नीचे */
  border-start-start-radius: 12px; /* LTR में ऊपर-बाएँ */
}
रिस्पॉन्सिव · यूनिट्स
मोबाइल फ़ुल-स्क्रीन लेआउट के लिए vh के बजाय dvh का उपयोग करें
MobileCSS

मोबाइल ब्राउज़र पर 100vh में ब्राउज़र क्रोम (एड्रेस बार) शामिल होता है, जिससे बार दिखाई देने पर ओवरफ़्लो होता है। नई dvh (डायनामिक व्यूपोर्ट हाइट) इकाई ब्राउज़र क्रोम दिखाने या छिपाने पर समायोजित हो जाती है।

CSS
/* ❌ ब्राउज़र क्रोम दिखाई देने पर मोबाइल पर ओवरफ़्लो होता है */
.hero { height: 100vh; }

/* ✅ पुराने ब्राउज़रों के लिए फ़ॉलबैक के साथ */
.hero {
  height: 100vh;          /* फ़ॉलबैक */
  height: 100dvh;         /* डायनामिक व्यूपोर्ट हाइट */
}
2023 से सभी आधुनिक ब्राउज़रों में समर्थित। यह भी उपलब्ध है: svh (छोटा व्यूपोर्ट, हमेशा क्रोम को बाहर रखता है) और lvh (बड़ा व्यूपोर्ट, हमेशा क्रोम स्थान शामिल करता है)।

ResponsiveCheckTool से और अधिक

रिस्पॉन्सिव टेस्टर हमारे बारे में संपर्क करें गोपनीयता नीति
🖥️

इन टिप्स को अभ्यास में लाएँ

देखें कि आपके रिस्पॉन्सिव परिवर्तन मोबाइल, टैबलेट और डेस्कटॉप पर कैसे दिखते हैं — तुरंत, मुफ़्त में, कोई साइन-अप आवश्यक नहीं।

अभी अपनी वेबसाइट का परीक्षण करें