CSS не является HTML.
- это имя character reference в формате HTML; эквивалентно десятичной цифровой символьной ссылке  
. 160 - десятичная цифра кодовая точка символа NO-BREAK SPACE
в Unicode (или UCS-2; см. HTML 4.01 Specification). Шестнадцатеричное представление этой кодовой точки U + 00A0 (160 = 10 × 16 + 0 × 16). Вы найдете это в Юникоде Code Charts и Character Database.
В CSS вам нужно использовать escape-последовательность Unicode для таких символов, которая основана на шестнадцатеричном значении кодовой точки символа. Поэтому вам нужно написать
.breadcrumbs a:before {
content: '>\a0';
}
Это работает до тех пор, пока последовательность эвакуации завершается строковым значением. Если символы следуют, есть два пути, чтобы избежать неправильного толкования:
а) (упоминаемый другими) Используйте ровно шесть шестнадцатеричных цифр для управляющей последовательности:
.breadcrumbs a:before {
content: '>\0000a0foo';
}
б) Добавить одну Пробельные (например, пробел) символ после побега последовательности:
.breadcrumbs a:before {
content: '>\a0 foo';
}
(с f
является шестнадцатеричной цифрой, \a0f
иначе означало бы GURMUKHI LETTER EE
здесь, или ਏ, если у вас есть подходящий шрифт)
.
Разметка пробела будет проигнорирована, и это будет отображаться > foo
, где отображаемое пространство здесь будет символом NO-BREAK SPACE
.
бело-космический подход ('\a0 foo'
) имеет следующие преимущества по сравнению с шестизначным подхода ('\0000a0foo'
):
- это проще набрать, потому что ведущие нули не нужны, а цифры делать не нужно учитывать;
- легче читать, так как между escape-последовательностями и последующим текстом есть пробел между пробелами и цифры не нужно подсчитывать;
- его требует меньше места, поскольку ведущие нули не нужны;
- это с повышением совместимости, поскольку Unicode, поддерживающий кодовые точки за пределами U + 10FFFF, в будущем потребует изменения спецификации CSS.
Таким образом, чтобы отобразить пробел после беглого символа, используйте два пространства в таблице стилей -
.breadcrumbs a:before {
content: '>\a0 foo';
}
- или сделать его явным:
.breadcrumbs a:before {
content: '>\a0\20 foo';
}
См CSS 2.1, section "4.1.3 Characters and case" подробности ,
В другом смысле добавление контента с использованием CSS нарушает разделение проблем, CSS предназначен только для определений стилей. Желательно избегать с точки зрения доступности, поскольку отключение CSS закручивает всю отметку. Однако приятно добавлять изображения, используя эту технику. – questzen 2008-10-10 08:03:30
Всё зависит. В этом случае он предназначен для презентаций. Это будет «нарушать» SoC, чтобы поставить «>» в html – mathieu 2008-10-10 09:11:00
Вопрос только в том, что, по вашему мнению, было бы лучше, как упорядоченный список? Я имею в виду, это список с заказом, не так ли? – alex 2009-03-20 05:36:52