Как я могу установить фиксированную ширину символа с помощью CSS для ЛЮБОГО глифа, включая загадочный Unicode?

Я подозреваю, что это невозможно сделать, но я спрашиваю, чтобы быть уверенным.

Я хотел бы заставить один символ в <span> иметь определенные width и height: 1em.

В идеале символ должен быть растянут до 1em, если он еще не имеет фиксированной ширины.

Это должно поддерживать любой символ, включая редкие глифы Unicode, поэтому я не могу просто установить шрифт Courier.

Наконец, это должно быть выполнено только с помощью CSS и должно быть простым и легким. Например. сложное решение, включающее div в table, содержащее однопиксельное изображение (только для отображения этого единственного символа), не подходит.

Я не могу вспомнить какое-либо свойство, которое делает это, и попытки Google только что вернули много «макетов с фиксированной шириной» и ничего об отдельных символах.

Если простого решения нет, а есть есть сложное, я не буду его использовать, но мне все равно было бы любопытно его услышать.


person o0'.    schedule 10.03.2011    source источник
comment
Этот вопрос похож на другой вопрос о переполнении стека: stackoverflow.com/questions/4258872/   -  person Brian Clapper    schedule 10.03.2011
comment
@ Брайан, в этом вопросе не указана стратегия форматирования, хотя он помечен [php], а этот явно запрашивает CSS.   -  person Pops    schedule 10.03.2011
comment
Вот почему я не голосовал за закрытие этого вопроса как дубликата. Это связанная проблема, но не совсем то же самое.   -  person Brian Clapper    schedule 10.03.2011
comment
@ Брайан, хорошо, достаточно честно. Я бы даже не назвал их достаточно похожими для комментария, но это становится действительно субъективным и непродуктивным.   -  person Pops    schedule 10.03.2011


Ответы (2)


Вы можете использовать @font-face для включения шрифта фиксированной ширины с хорошей поддержкой Unicode. Семейство DejaVu имеет отличную поддержку юникода и монофонический вариант, и должно делать это хорошо. Вы можете использовать генератор FontSquirrel @font-face для создания необходимых для этого файлов.

person Yi Jiang    schedule 10.03.2011

Хотя мне нравится ответ И Цзяна, я думаю, что вам лучше подойдет GNU Unifont, основываясь на кратком обсуждении на этой странице. и список Википедии шрифтов с хорошей поддержкой Unicode. Примечательно, что на первой странице указано, что в DejaVu Sans Mono отсутствуют некоторые глифы, которые, в зависимости от вашего приложения, могут быть довольно распространенными.

person Pops    schedule 10.03.2011
comment
DejaVu Sans Mono в настоящее время предлагает большинство (возможно, все) символов, которые были упомянуты как отсутствующие в статье, на которую вы ссылаетесь. - person Marconius; 22.03.2012
comment
Хм, сейчас он заблокирован здесь на работе, но я попробую проверить это позже, спасибо за подсказку. - person Pops; 22.03.2012