क्या सीएसएस के साथ संख्याओं को प्रारूपित करना संभव है? वह है: दशमलव स्थान, दशमलव विभाजक, हजारों विभाजक, आदि।
क्या सीएसएस के साथ संख्याओं को प्रारूपित करना संभव है? वह है: दशमलव स्थान, दशमलव विभाजक, हजारों विभाजक, आदि।
जवाबों:
आप उपयोग कर सकते हैं Number.prototype.toLocaleString()
। यह अन्य संख्या प्रारूपों, जैसे लैटिन, अरबी, आदि के लिए भी प्रारूपित कर सकता है।
CSS वर्किंग ग्रुप ने 2008 में सामग्री प्रारूपण पर एक ड्राफ्ट प्रकाशित किया है। लेकिन अभी कुछ भी नया नहीं है।
जावास्क्रिप्ट में किसी भी संख्या के लिए, मैं अगले एक का उपयोग करता हूं:
var a = "1222333444555666777888999";
a = a.replace(new RegExp("^(\\d{" + (a.length%3?a.length%3:0) + "})(\\d{3})", "g"), "$1 $2").replace(/(\d{3})+?/gi, "$1 ").trim();
और यदि आपको उदाहरण के लिए कॉमा के रूप में किसी अन्य विभाजक का उपयोग करने की आवश्यकता है:
var sep = ",";
a = a.replace(/\s/g, sep);
या एक समारोह के रूप में:
function numberFormat(_number, _sep) {
_number = typeof _number != "undefined" && _number > 0 ? _number : "";
_number = _number.replace(new RegExp("^(\\d{" + (_number.length%3? _number.length%3:0) + "})(\\d{3})", "g"), "$1 $2").replace(/(\d{3})+?/gi, "$1 ").trim();
if(typeof _sep != "undefined" && _sep != " ") {
_number = _number.replace(/\s/g, _sep);
}
return _number;
}
_number.replace
हमें यह सुनिश्चित करना होगा कि यह इस तरह से एक तार है _number = typeof _number != "undefined" && _number > 0 ? String(_number) : "";
या फिर आपको एक त्रुटि मिल जाएगी _number.replace
परिभाषित नहीं है या एक फ़ंक्शन नहीं है
नहीं, आपको डोमेन में एक बार जावास्क्रिप्ट का उपयोग करना होगा या इसे अपने भाषा सर्वर-साइड (PHP / ruby / python आदि) के माध्यम से प्रारूपित करना होगा।
rtl
, जो एक ही सामग्री को अलग तरीके से दिखाता है: क्या इसे सर्वर-साइड भी माना जाना चाहिए?
कोई जवाब नहीं, लेकिन ब्याज के perhpas। मैंने कुछ साल पहले CSS WG को एक प्रस्ताव भेजा था। हालाँकि, ऐसा कुछ नहीं हुआ। यदि वास्तव में वे (और ब्राउज़र विक्रेता) इसे एक वास्तविक डेवलपर की चिंता के रूप में देखेंगे, तो शायद गेंद लुढ़कना शुरू हो सकती है?
यदि यह मदद करता है ...
मैं PHP फंक्शन number_format()
और नैरो-ब्रेक स्पेस (  
) का उपयोग करता हूं । यह अक्सर एक अस्पष्ट हजारों विभाजक के रूप में उपयोग किया जाता है।
echo number_format(200000, 0, "", " ");
क्योंकि IE8 में नैरो-ब्रेक स्पेस को रेंडर करने के लिए कुछ समस्याएं हैं, इसलिए मैंने इसे एक स्पैन के लिए बदल दिया
echo "<span class='number'>".number_format(200000, 0, "", "<span></span>")."</span>";
.number SPAN{
padding: 0 1px;
}
आप इस उद्देश्य के लिए CSS का उपयोग नहीं कर सकते। यदि यह लागू है तो मैं जावास्क्रिप्ट का उपयोग करने की सलाह देता हूं। अधिक जानकारी के लिए इसे देखें: प्रिंटफ / स्ट्रिंग.फॉर्मैट के बराबर जावास्क्रिप्ट
इसके अलावा जैसा कि पेट्र ने उल्लेख किया है कि आप इसे सर्वर-साइड पर संभाल सकते हैं लेकिन यह पूरी तरह से आपके परिदृश्य पर निर्भर करता है।
मुझे नहीं लगता कि आप कर सकते हैं। यदि आप PHP में कोडिंग कर रहे हैं तो आप number_format () का उपयोग कर सकते हैं । और अन्य प्रोग्रामिंग भाषाओं में संख्याओं को प्रारूपित करने के लिए एक फ़ंक्शन होता है।
आप JSP पेज के लिए प्रारूपण के लिए Jstl टैग लाइब्रेरी का उपयोग कर सकते हैं
JSP Page
//import the jstl lib
<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
<c:set var="balance" value="120000.2309" />
<p>Formatted Number (1): <fmt:formatNumber value="${balance}"
type="currency"/></p>
<p>Formatted Number (2): <fmt:formatNumber type="number"
maxIntegerDigits="3" value="${balance}" /></p>
<p>Formatted Number (3): <fmt:formatNumber type="number"
maxFractionDigits="3" value="${balance}" /></p>
<p>Formatted Number (4): <fmt:formatNumber type="number"
groupingUsed="false" value="${balance}" /></p>
<p>Formatted Number (5): <fmt:formatNumber type="percent"
maxIntegerDigits="3" value="${balance}" /></p>
<p>Formatted Number (6): <fmt:formatNumber type="percent"
minFractionDigits="10" value="${balance}" /></p>
<p>Formatted Number (7): <fmt:formatNumber type="percent"
maxIntegerDigits="3" value="${balance}" /></p>
<p>Formatted Number (8): <fmt:formatNumber type="number"
pattern="###.###E0" value="${balance}" /></p>
परिणाम
प्रारूपित संख्या (1): £ 120,000.23
प्रारूपित संख्या (2): 000.231
प्रारूपित संख्या (3): 120,000.231
प्रारूपित संख्या (4): 120000.231
स्वरूपित संख्या (5): 023%
प्रारूपित संख्या (6): 12,000,023.0900000000%
प्रारूपित संख्या (7): 023%
प्रारूपित संख्या (8): 120E3