Разрешенный html / css / javascript - синтаксис класса - PullRequest
0 голосов
/ 03 февраля 2010

Мне нужно определить html-классы из контента, поэтому почти каждый символ может быть использован. Согласно html reference я могу использовать cdata, поэтому у меня не должно быть проблем. Я полагаю, однако, что CSS и / или Javascript / JQuery не будет хорошо играть с этим.

Кто-нибудь знает, какие символы можно использовать без проблем или если есть функция / плагин / .., которая приводит в порядок имена классов, чтобы их можно было использовать?

Ответы [ 2 ]

5 голосов
/ 03 февраля 2010

имена классов css должны быть обычными идентификаторами (http://www.w3.org/TR/CSS21/syndata.html#characters)

В CSS 2.1 идентификаторы (включая имена элементов, классы и идентификаторы в селекторах) могут содержать только символы [A-Za-z0-9] и ISO 10646 символов U + 00A1 и выше, плюс дефис (-) и подчеркивание (_), они не могут начинаться с цифры.

Javascript не возражает, так каквы будете использовать имена классов в качестве строк. Таким образом, вы можете использовать любой символ в том, что касается javascript.

Если вы хотите сократить свои имена классов до пригодного для использования подмножества css, простого регулярного выражения должно быть достаточно. кодировать ваши имена классов в том же подмножестве, это будет немного сложнее, но я полагаю, вы можете попытаться Base64-кодировать их. Вот некоторые jQuery плагины для кодирования / декодирования base64.

1 голос
/ 03 февраля 2010

Что касается атрибута class, у вас возникнут проблемы с использованием символов, отличных от [az], [AZ] и [_-].

Для произвольных данных я бы порекомендовал (ожидается в HTML5) атрибут data-x.
См. http://ejohn.org/blog/html-5-data-attributes/ для примера.

Cheers

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...