IE8 не отображает некоторые из элементов HTML-имени
Некоторые элементы имени HTML не отображаются в IE8, и вместо этого я могу видеть не визуализированный объект HTML! Например ş
или ı
.
Я нашел решение использовать объекты с числовыми номерами HTML, такие как ş
вместо ş
.
Мне было интересно, знает ли кто-нибудь о причине этой проблемы и есть ли способ увидеть в IE8 ş
или ı
или подобные объекты?
Вот мой код на jsfiddle: (Если вы скопируете этот код в HTML файл, он не будет отображаться в IE8)
http://jsfiddle.net/7uBrd/
<HTML lang="TR">
<HEAD>
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
<TITLE>test</TITLE>
</HEAD>
<BODY>
<p>This is not working in IE8: afişler, eşyaları, kı </p>
<p> This is working: afi&;#351;ler, eşyaları, kı </p>
<p>This is Working as well: test test–</p>
</BODY>
</HTML>
Ответы
Ответ 1
Поддержка браузеров для названных объектов HTML всегда была хуже поддержки числовых объектов. В конце концов, это номер кода Юникода для символа, тогда как имя требует ручного обновления таблицы поиска в исходном коде браузера. Эти объекты, о которых вы упоминаете, просто не поддерживаются Internet Explorer с версии 8 (или даже версии 9, не знаю о 10).
У вас уже есть обходной путь, но я рекомендую вам просто переключиться на UTF-8 и полностью исключить сущности (за исключением &
и других разумных исключений).
Ответ 2
Спецификация HTML4 не содержит объект scedil
.
http://www.w3.org/TR/html4/sgml/entities.html
Однако спецификация HTML5.
http://www.w3.org/TR/2011/WD-html5-20110113/named-character-references.html