Как вставить необычный специальный символ в атрибут html?

Мой подход/что я нашел на данный момент:

Я хочу вставить значок в качестве атрибута значения для входного тега следующим образом:

<input class="icon-" value="&#977154;" />
<!--the class is used to assign the icon font-->


Я заметил, что CSS-реализация иконочных шрифтов содержит специальные символы в качестве содержимого, которое должно быть включено в качестве значка:

.icon-search:before {
    content: "\e902";
}

Итак, я искал эквивалентный код HTML Entity, чтобы включить его в качестве атрибута значения и обнаружил, что соответствующий код — &#977154;, а также что это недопустимый символ Unicode.

Итак, мне интересно, как закодировать документ, чтобы он отображал этот символ как соответствующий значок (в конце концов, он правильно отображается при реализации через класс, так что, возможно, есть способ).


Отказ от ответственности:

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


person Lual    schedule 06.09.2016    source источник
comment
Что ж, вы правы, 977154 (или U+0EE902) недопустимый символ (он «не назначен»). Что вы ожидаете?   -  person roeland    schedule 06.09.2016
comment
&#977154; — это кодовая точка U+EE902, которая не назначается в Unicode. \e902 — это кодовая точка U+E902 (&#59650;), которая является кодовой точкой для частного использования. Это совершенно разные кодовые точки.   -  person Remy Lebeau    schedule 06.09.2016
comment
@roeland Я ожидал, что он отобразит мой пользовательский значок, потому что он определен в пользовательском шрифте значка.   -  person Lual    schedule 06.09.2016
comment
@RemyLebeau Ты прав, это сработало! Большое спасибо :) - Я запутался, потому что, когда я искал, U+EE902 лучше ранжировался в результатах.   -  person Lual    schedule 06.09.2016
comment
@RemyLebeau Кстати, напишите официальный ответ, чтобы я мог проголосовать за него как за правильное решение :)   -  person Lual    schedule 06.09.2016


Ответы (1)


&#977154; — это кодовая точка U+EE902, которая не назначается в Unicode.

\e902 — это кодовая точка U+E902 (&#59650;), которая является кодовой точкой для частного использования.

Это совершенно разные кодовые точки.

person Remy Lebeau    schedule 06.09.2016