क्या सफारी में * डिफ़ॉल्ट * मोनोस्पेस फ़ॉन्ट सेट करने का कोई तरीका है?


11

मेरे पास एक वेब एप्लिकेशन है जो ब्राउज़र के डिफ़ॉल्ट मोनोस्पेस फ़ॉन्ट का उपयोग करता है। यह इस तरह से सेट किया गया है ताकि उपयोगकर्ता अपना स्वयं चुन सके। क्रोम में, यह अच्छी तरह से काम करता है, क्योंकि डिफ़ॉल्ट फोंट को सेट करना आसान है, लेकिन सफारी में, उन्होंने विकल्प को हटा दिया।

क्या उपयोगकर्ताओं के लिए सफारी में डिफ़ॉल्ट फोंट सेट करने का कोई तरीका है?

जवाबों:


2

सफारी 12 के अनुसार, ऐसा करने के सभी विकल्प हटा दिए गए हैं:

  • प्रकटन पैनल (लंबा) चला गया है
  • defaultsचाबियाँ नहीं रह सम्मान किया जाता है
  • सीएसएस @font-faceपरिभाषाएँ एक अंतर्निहित श्वेतसूची में सीमित हैं local(), जो सिस्टम पर स्थापित किसी भी अन्य फोंट को अनदेखा करती है, जो कि एंटी-फिंगरप्रिंटिंग उपायों के एक व्यापक पैकेज का हिस्सा है।

एक साथ लिया गया, इसका मतलब है कि टाइम्स फॉर serif, हेल्वेटिका फॉर sans-serifऔर कूरियर फॉर से चूक को बदलने का कोई तरीका नहीं है monospace


केवल एक चीज जो आप अभी भी कर सकते हैं वह सीधे विभिन्न तत्वों को स्टाइल करने के लिए एक उपयोगकर्ता स्टाइलशीट बना सकती है। उदाहरण के लिए आप से डिफ़ॉल्ट फ़ॉन्ट परिवार को बदल सकता है serifके लिए sans-serif:

body { font-family: sans-serif }

या आप अभी भी विशिष्ट रूप से स्थापित गैर-सिस्टम फोंट को विशिष्ट नाम दे सकते हैं:

body { font-family: 'Open Sans' }

दुर्भाग्य से जब यह डिफ़ॉल्ट दस्तावेज़ फ़ॉन्ट को बदलने के लिए यथोचित काम करता है, तो यह हर तत्व को बहाल करने के लिए एक ही दृष्टिकोण का उपयोग करने के लिए जटिल है जो एक मोनोस्पेस फ़ॉरेस्ट में चूक करता है। मुझे यकीन नहीं है कि सीएसएस पूरी तरह से ऐसे तत्वों के लिए डिफ़ॉल्ट व्यवहार का पूरी तरह से अनुकरण भी कर सकता है - जबकि पहले defaultsया तो एक @font-faceनियम के साथ या किसी उपयोगकर्ता स्टाइलशीट का उपयोग करके ऐसा करना आसान था monospace(जो कि केवल monospaceडिफ़ॉल्ट स्टाइल को छूने के बिना क्या मतलब को फिर से परिभाषित करता है, और इसलिए डिफ़ॉल्ट व्यवहार को उस अन्य फ़ॉन्ट पर लागू करने की अनुमति दी गई है)।

मैं कूरियर में सेट किए गए पाठ की बड़ी मात्रा को पढ़ना पसंद नहीं करता, इसलिए ऐसा लगता है कि भविष्य में मुझे RFC को पढ़ने के लिए किसी अन्य ब्राउज़र का उपयोग करना होगा ...


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

धन्यवाद। हां, मैंने सालों से लरी के जवाब का इस्तेमाल किया है; दुर्भाग्य से, संगीत अब बंद हो गया है। यह ... अफसोसजनक है, कम से कम कहने के लिए, लेकिन यह है कि यह कैसे है।
अरस्तू पगलतज़िस

12

पोस्ट किए जाने के बाद निम्न जानकारी सही थी, लेकिन अब केवल सफारी के अप्रचलित संस्करणों पर लागू होती है।


डिफ़ॉल्ट फ़ॉन्ट और फ़ॉन्ट आकार बदलने के लिए अनपेक्षित प्राथमिकताएँ हैं:

defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2StandardFontFamily Georgia
defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2DefaultFontSize 16
defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2FixedFontFamily Menlo
defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2DefaultFixedFontSize 14

एक अन्य विकल्प सीएसएस फ़ाइल को संपादित करना है जो डिफ़ॉल्ट शैलियों को परिभाषित करता है ( प्राथमिकता में देखें> उन्नत> स्टाइलशीट ), उदाहरण के लिए कुछ इस तरह से जोड़ना:

@font-face {
   font-family: monospace;
   src: local('Menlo');
}

वह नियम किसी भी तत्व का उपयोग करता है font-family: monospace(साथ ही साथ डिफ़ॉल्ट रूप से <pre>और जैसे तत्व <code>) मेनलो का उपयोग करता है। आप जो भी पसंद करते हैं, बस फ़ॉन्ट नाम (संलग्न उद्धरण रखने के लिए सावधान रहना) बदलें।


1
अचानक, यह Mojave (10.14.2) पर फ़ॉन्ट बुक के माध्यम से स्थापित अतिरिक्त फोंट के लिए काम नहीं करता है
Ilya Vassilevsky

अरस्तू पगलतज़िस का नया उत्तर (ऊपर) देखें। यह बहुत अच्छी खबर नहीं है।
कार्ल स्मिथ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.