пользовательские теги не работают в ie8 - PullRequest
3 голосов
/ 28 июля 2011

Я попытался создать пользовательские теги, чтобы в них можно было вводить текст, отображающий что-то с красным или полужирным шрифтом и т. Д. При отображении в формате HTML, например,

<rb>text here becomes red and bold</rb> and goes to default here

это отображается в div с классом 'note'У меня есть следующие настройки CSS

.note rb
{
    color:Red;
    font-weight:bold;
}

Он работает в ie9, Chrome, Firefox, но не работает в ie8.Как я могу заставить его работать там?

Ответы [ 2 ]

19 голосов
/ 28 июля 2011

если вы не возражаете против небольшого JavaScript:

<!--[if lt IE 9]>
<script>
document.createElement("rb");
</script>
<![endif]-->

если вы хотите добавить несколько элементов / тегов, вы можете:

<!--[if lt IE 9]>
<script>
// bold, italic, underlined, striked
els = ['rb', 'ri', 'ru', 'rs'];
for(i = 0; i < els.length; i++) {
    document.createElement(els[i]);
    }
</script>
<![endif]-->

Обновление

Похоже, в работе есть возможность определения пользовательских элементов ( W3C Working Draft 6 июня 2013 г. )

Некоторые проекты, которые используют это:

Смотри также:

0 голосов
/ 28 июля 2011

Чтобы угодить старшим браузерам (IE8 и старше), я бы просто выбрал что-то вроде:

HTML:

<span class="RB">text here becomes red and bold</span> and goes to default here

CSS:

.RB {color:Red; font-weight:bold; }

Это предназначается для всех RB классов. Так что вам нужно всего лишь обернуть все внутри

<span class="RB"> </span>

...