2013-02-25 97 views
5

पर टेक्स्ट को अलग-अलग ज़ूम करता है। मैं साइट पुनर्निर्माण के लिए ट्विटर बूटस्ट्रैप (कुछ अनुकूलन के साथ) का उपयोग कर रहा हूं।ट्विटर बूटस्ट्रैप वेबकिट (क्रोम, सफारी)

एक समस्या क्रोम और सफारी जैसे वेबकिट ब्राउज़र पर पेज/टेक्स्ट ज़ूमिंग के साथ है। ज़ूमिंग करते समय ये टेक्स्ट को स्क्रीन पर रीव्रैप नहीं करते हैं। इसके बजाय पाठ पृष्ठ को जारी रखता है जिसमें क्षैतिज स्क्रॉलिंग की आवश्यकता होती है।

उदाहरण के लिए, क्रोम/सफारी और फ़ायरफ़ॉक्स पर बूटस्ट्रैप होम पेज पर टेक्स्ट ज़ूम करने की तुलना करें - फ़ायरफ़ॉक्स पर भी ज़ूमिंग के कारण मेनू टेक्स्ट के लिए पर्याप्त जगह नहीं होने पर फ़ायरफ़ॉक्स पर भी उत्तरदायी मेन्यूबार ठीक से काम करता है।

यह पिक्सेल-आधारित लेआउट के साथ एक ज्ञात वेबकिट "फीचर" प्रतीत होता है, जिसे एम-आधारित चौड़ाई का उपयोग करके हल किया जा सकता है, जो मानक बूटस्ट्रैप के साथ अव्यवहारिक दिखता है (बदलने और बनाए रखने के लिए बहुत अधिक तरीका)।

तो, क्या कोई बूटस्ट्रैप व्युत्पन्न है जिसके आसपास एम-आधारित चौड़ाई का उपयोग होता है, या समस्या के आसपास काम करने के लिए सीएसएस आदि का स्निपेट जोड़ने का कोई तरीका है? इस परियोजना पर बूटस्ट्रैप का उपयोग करने से मुझे अभी तक रोकना एकमात्र चीज है। मैं चाहता हूं कि साइट कम दृष्टि वाले उपयोगकर्ताओं के लिए पहुंच योग्य हो, जो अक्सर ज़ूम करते हैं।

अच्छा होगा अगर वेबकिट ने अन्य ब्राउज़र इंजनों की तरह व्यवहार करने के लिए बग/फीचर को ठीक किया लेकिन मुझे नहीं लगता कि दुर्भाग्य से जल्द ही ऐसा हो रहा है।

[अपडेट] बस स्पष्ट होने के लिए, यह फ़ायरफ़ॉक्स के लिए पूरी तरह से इसी तरह की कार्रवाई है जिसके बाद मैं हूं: टेक्स्ट ज़ूमिंग कॉलम के भीतर बाधित रहता है, और मीडिया प्रश्नों का एहसास है कि पाठ ज़ूम किया गया है और मेनू समायोजित करते समय स्क्रीन पर स्थान सीमित है और तदनुसार कॉलम की संख्या। द्रव लेआउट मुख्य आलेख पाठ को बाधित करने में सहायता करते हैं, लेकिन ज़ूमिंग करते समय मेनू और साइडबार अभी भी क्रोम/सफारी पर एक गड़बड़ हैं।

+0

इस बग लिनक्स और ओएस पर क्रोम 27 में, अंत में क्रोम के लिए निर्धारित किया गया है लगता है: इस उदाहरण देखें। अब क्रोम पर बूटस्ट्रैप फ़ायरफ़ॉक्स के समान काम करता है, एनएवी बार और एनएवी आइकन के बीच कूदता है क्योंकि पाठ का आकार बढ़ जाता है, फिर फिर से वापस आ जाता है, और कॉलम को जाने के बजाए हमेशा पेज पर सभी टेक्स्ट रखना विस्तृत। ओएस/एक्स पर सफारी 6.0.4 अभी भी टूटा हुआ है। –

+0

सफारी 6.0.3 ओएसएक्स भी – idonnie

उत्तर

1

रोब,

आप पूरा कर सकते हैं बूटस्ट्रैप में एक द्रव कंटेनर का उपयोग कर और उसके बाद की तरह कुछ के साथ एक प्रतिशत चौड़ाई के लिए अपनी अधिकतम-चौड़ाई संपत्ति की स्थापना करके आप क्या चाहते हैं:

[class*="container-"] { 
margin: auto; 
padding: 0 20px; 
max-width: 90%; 
} 

एचटीएमएल लगेगा कुछ ऐसा:

<div class="content"> 
    <div class="container-fluid"> 
     <div class="row-fluid"> 
      <div class="span12"> 
       put your contents in here 
      </div> 
     </div> 
    </div> 
</div> 

जहां कक्षा सामग्री का div कंटेनर के भीतर नहीं है और पृष्ठभूमि के रूप में कार्य कर सकता है। इस प्रकार मेरी बूटस्ट्रैप साइट सेट अप है और आपने जो परिणाम खोज रहे हैं, उसके साथ सफारी और फ़ायरफ़ॉक्स में अभी कोशिश की है। जैसा कि आपने बताया है कि प्रतिपादन को ब्राउज़र के प्रतिपादन इंजन (फ़ायरफ़ॉक्स के मामले में भौगोलिक और सफारी के मामले में वेबकिट) करना है। उम्मीद है कि यह आपके लिए चीजों को साफ़ करता है।

+0

टूटा हुआ फ्लूइड लेआउट (अतिरिक्त [वर्ग * = "कंटेनर-"] के साथ या बिना) ज़ूम की थोड़ी मात्रा के साथ कॉलम के भीतर बाध्य रहें।लेकिन अभी भी वेबकिट में जो दिखाई दे रहा है उसके आधार पर एक संकुचित लेआउट पर कभी भी कोई स्विच नहीं है। उदाहरण के लिए http://twitter.github.com/bootstrap/examples/fluid.html लें - जैसे आप मेनू ज़ूम करते हैं और साइडबार क्रोम में तेजी से गन्दा हो जाते हैं। फ़ायरफ़ॉक्स में, ज़ूम के कुछ स्तर मेनू को पतन करने के लिए प्राप्त करते हैं, और अधिक ज़ूम एक कॉलम मोड प्राप्त करता है। ऊपर [वर्ग * = "कंटेनर-"] जोड़ना कोई फर्क नहीं पड़ता है, क्या आप मुझे एक कामकाजी उदाहरण के लिए इंगित कर सकते हैं? –

2

आप अपनी साइट के निचले दृष्टि आगंतुकों के लिए विकल्प पहुँच के रूप में एक स्लाइडर सेट कर सकते हैं .. बस पाठ-आकार बदलने jQuery का उपयोग कर का उपयोग करें। पेज ज़ूम करने की कोई ज़रूरत नहीं है।/एक्स कम से कम

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $('a').click(function() { 
      var os = $('p').css('font-size'); 
      var num = parseFloat(os, 10); 
      var px = os.slice(-2); 

      $('p').css('font-size', num/1.4 + px); 
      if (this.id == 'larger') { 
       $('p').css('font-size', num * 1.4 + px); 
      } 
     }); 
    }); 
</script> 

<a href="#" id ="larger">Larger [+]</a> 
<br> 
<a href="#" id="smaller">Smaller [-]</a> 
<p> 
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud 
exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 
</p> 
+0

नहीं, मैं उन उपयोगकर्ताओं के बारे में बात कर रहा हूं जो ज़ूम सुविधाओं में निर्मित मानक का उपयोग करते हैं। ब्राउज़र में इस सुविधा का निर्माण किया गया है, यह उपयोगकर्ताओं को साइट-विशिष्ट जावास्क्रिप्ट संस्करण का उपयोग करने के लिए मजबूर करने का कोई मतलब नहीं है। निचले दृष्टि वाले उपयोगकर्ताओं के पास अक्सर ऑटो-ज़ूम सेट होता है, दूसरे शब्दों में हमेशा नई साइटें (उदाहरण के लिए) 125% खोलती हैं। फ्लूइड लेआउट इस के साथ मदद करते हैं, हालांकि यदि यह मोबाइल/डेस्कटॉप मीडिया क्वेरी ब्रेकपॉइंट के पास है तो मीडिया क्वेरी सक्रिय नहीं की जाएगी (पिक्सेल पर आधारित), इसलिए अंतिम परिणाम एक कॉलम के स्थान पर एक बहु-स्तंभ लेआउट स्क्वैश किया गया है लेआउट, और अक्सर पाठ बहती कॉलम। –

+0

अजीब है कि एक उत्तर जो बूटस्ट्रैप बग को संबोधित नहीं करता है, दो वोट प्राप्त करता है। इसे कम नहीं कर सकता, गलत "स्वचालित" बाउंटी को हटा नहीं सकता है। –

+0

मैं समझता हूं कि आप किस बारे में बात कर रहे हैं। क्षमा करें अगर यह उत्तर आपकी मदद नहीं करता है। मैं भी एक ही समस्या में आया हूँ। और चूंकि मैं इस क्रोम मुद्दे को हल नहीं कर सकता, इसलिए मैं बस एक वैकल्पिक समाधान के साथ गया। क्रोम के पुराने संस्करणों के साथ पहले मैंने बूटस्ट्रैप का इस्तेमाल किया, अगर मुझे सही याद है, तरल लेआउट ठीक काम कर रहे थे। अंत में, मुझे लगता है कि यह वास्तव में एक बग है। – Imtiaz