क्रोम डिवाइस मोड एमुलेशन मीडिया क्वेरी काम नहीं कर रही है


94

किसी कारण डिवाइस इम्यूलेशन मोड मेरे मीडिया प्रश्नों को नहीं पढ़ रहा है। यह मेरी अपनी साइटों सहित अन्य साइटों पर काम करता है, जिन्हें मैंने बूटस्ट्रैप के साथ बनाया था, लेकिन यह उन मीडिया क्वेरी पर काम नहीं कर रहा है, जिनका उपयोग मैं स्क्रैच से कर रहा हूं (मीडिया क्वेरी बटन पर क्लिक करने से बटन नीला हो जाता है, लेकिन कोई मीडिया क्वेरी प्रदर्शित नहीं होती है)। नीचे फ़ाइल का परीक्षण करें। क्या यह Chrome में बग है या क्या मुझे अपनी फ़ाइल में कुछ बदलने की आवश्यकता है?

<!DOCTYPE html>
<!--
Media Queries Example 1
Sam Scott, Fall 2014
-->
<html>
<head>
    <title>MQ Example 1</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <style>
        body { font-family: sans-serif; }
        h1 { color: red; } 
        h2 { color:blue; }
        p { color:green; }

        @media (max-width: 768px) and (min-width: 481px) {
            h1 { color: green; } 
            h2 { color:red; }
            p { color:blue; }
        }

        @media (max-width:479px), print { 
            h1,h2,p { color:black; }
        }

        @media print {
            body { font-family: serif; }
        }


    </style>
</head>
<body>
    <h1>I'm a first level heading</h1>
    <p>I'm a paragraph.</p>
    <h2>I'm a second level heading</h2>
    <p>I'm another paragraph.</p>
</body>
</html>

2
सैम स्कॉट: @ BananaNeil का उत्तर अधिक संतोषजनक है तो मेरा, यदि आप कर सकते हैं, तो उसे सर्वश्रेष्ठ उत्तर के रूप में चिह्नित करें।
दिगंबर

जवाबों:


247

मैंने अपने पृष्ठ पर मेटा टैग जोड़कर इस समस्या को ठीक किया:

 <meta name="viewport" content="width=device-width">

अद्यतन (दिसंबर 2019):

ऐसा लगता है कि आपको प्रारंभिक पैमाने और न्यूनतम पैमाने निर्धारित करने की आवश्यकता हो सकती है, जैसे:

<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" />

7
यह मेरे लिए भी काम किया। किसी भी विचार क्यों यह समस्या हल करती है?
रिची थॉमस

@BananaNeil: यहां तक ​​कि मैं यह जानने के लिए उत्सुक हूं कि काम करने के इस समाधान के पीछे क्या कारण है? कोई विचार ?
स्वप्नदोष

2
ऐसा लगता है कि क्रोम एमुलेटर हमेशा एक 946pxपृष्ठ को रेंडर करने और स्केल करने की कोशिश करता है जो भी आकार स्क्रीन है वह अनुकरण कर रहा है। आप देख सकते हैं कि यह सच है कि आपके समस्याग्रस्त पृष्ठ के आपके शरीर टैग की चौड़ाई हमेशा 946pxएमुलेटर में होती है। व्यूपोर्ट टैग ब्राउज़र को बताता है कि पेज को रेंडर करने की कोशिश कैसे करनी चाहिए। width=device-widthजिस तरह से आप उम्मीद करेंगे वैसे ही काम करता है, जबकि width=100pxसबकुछ ठीक हो जाता है। आप इसके बारे में यहां और अधिक पढ़ सकते हैं: w3schools.com/css/css_rwd_viewport.asp
BananaNeil

2
यदि आप ओवरज़ूम कर चुके हैं तो यह क्वर्की भी व्यवहार कर सकता है ... आपको केवल वे आयाम मिलते हैं जो आप दर्ज कर सकते हैं। एक मैक पर, यदि आप cmd शिफ्ट करते हैं -, अंततः मोबाइल एमुलेटर सूची फिर से wtih Galaxy S5, iPhone 6 इत्यादि को
पॉप करती है

1
यह याद रखना मुश्किल है कि यह डिफ़ॉल्ट नहीं है;)
19

19

स्वीकृत उत्तर ने मेरे लिए ऐसा नहीं किया, मुझे इसके minimum-scale=1साथ ही जोड़ना था ।

<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" />

1
आप सही कह रहे हैं मुझे इस बारे में पता नहीं था कि प्रॉपर्टीइम्युनिटी-स्केल = 1 .. thx
अदनान तारिक

6

Chrome में डिवाइस एमुलेशन अभी भी एक WIP है। सच कहूं तो मुझे लगता है कि उन्होंने इसे जल्द ही क्रोम में धकेल दिया। अनुकरण का परीक्षण करने के लिए कैनरी (क्रोम बीटा ब्राउज़र) का उपयोग करने का प्रयास करें, मुझे लगता है कि यह क्रोम में एक से बेहतर तरीके से काम कर रहा है।


0

मेरे लिये कार्य करता है।

बस अपने पृष्ठ के मुख्य भाग में एक व्यूपोर्ट मेटा टैग लगाएं। उदाहरण देखें:

 <head>
  <!--include the following meta tag to make chrome dev tools recognize media queries: -->
  <meta name="viewport" content="width=device-width">
</head>


0

जब तक मैंने देखा कि एक ही समस्या है, अगर मुझे स्क्रीन आकार के आधार पर नियमों के एक ही सेट के लिए एक से अधिक कार्यान्वयन हैं:

एक ही मीडिया क्वेरी के लिए न्यूनतम और अधिकतम चौड़ाई दोनों निर्दिष्ट करें ताकि यह बाद वाले द्वारा अधिलेखित न हो:

@media screen and (min-width:9px , max-width:9px) {

    css.selector { 

        style rules gets applied : in this range of screen sizes ;

    } 

}


css.selector{


    the other style get applied : starting from 10px ;

}

या सभी को कम से कम एक ब्रेकपॉइंट सेट करें:

@media screen and (min-width:9px) {

    some styles get applied : starting from this point ;

}

}

@media screen and (min-width:99px) {

    some styles gets applied : starting from this point ;

}

}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.