Форматирование чисел (десятичные разряды, разделители тысяч и т. Д.) С помощью CSS

Можно ли форматировать числа с помощью CSS? То есть: десятичные разряды, десятичный разделитель, разделитель тысяч и т. Д.

    Ну, для любых чисел в Javascript я использую следующий:

    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; } 

    Рабочая группа CSS опубликовала проект по форматированию контента в 2008 году. Но ничего нового сейчас нет.

    Вероятно, лучший способ сделать это – это комбинировать настройку span с classом, обозначающим ваше форматирование, а затем использовать Jquery .each для форматирования на пролетах при загрузке DOM …

    Нет, вам нужно использовать javascript, когда он находится в DOM, или отформатируйте его с помощью серверной части сервера (PHP / ruby ​​/ python и т. Д.),

    Не ответ, а интерес. Несколько лет назад я отправил предложение в РГС . Однако ничего не произошло. Если действительно (и продавцы браузеров) увидели бы это как настоящую проблему с разработчиком, возможно, мяч мог начать катиться?

    Если это помогает …

    Я использую функцию PHP number_format() и узкое пространство без пролома ( ). Он часто используется как недвусмысленный разделитель тысяч.

     echo number_format(200000, 0, "", " "); 

    Поскольку у IE8 есть некоторые проблемы, чтобы сделать узкое пространство без пролома, я изменил его для SPAN

     echo "".number_format(200000, 0, "", "").""; 
     .number SPAN{ padding: 0 1px; } 

    Вы не можете использовать CSS для этой цели. Я рекомендую использовать JavaScript, если он применим. Взгляните на это за дополнительной информацией: JavaScript эквивалентен printf / string.format

    Также, как сказал Петр, вы можете справиться с этим на серверной стороне, но это полностью зависит от вашего сценария.

    Я не думаю, что ты можешь. Вы можете использовать number_format (), если вы кодируете в PHP. И другие языки программирования также имеют функцию форматирования чисел.

    Вы можете использовать библиотеку тегов Jstl для форматирования для JSP-страниц

     JSP Page //import the jstl lib <%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>  

    Formatted Number (1):

    Formatted Number (2):

    Formatted Number (3):

    Formatted Number (4):

    Formatted Number (5):

    Formatted Number (6):

    Formatted Number (7):

    Formatted Number (8):

    результат

    Отформатированный номер (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

    Давайте будем гением компьютера.