У меня есть сайт ASP.Net MVC, на котором я хочу отобразить некоторые пользовательские холсты HTML 5. У меня странная проблема с сервером, обслуживающим дополнительные символы, которых нет в исходном коде.
Чтобы использовать холст HTML 5 в IE 8, вы должны добавить следующий тег в заголовок HTML:
<!--[if IE]><script src="../../Scripts/excanvas.js"></script><![endif]-->
По какой-то причине это выглядит так:
<!--[if IE]>IE]><script src="../../Scripts/excanvas.js"></scr<![endif]-->
Конечно, разметка duff приводит к тому, что скрипт excanvas не загружается IE.Я не могу понять, почему линия искажена.У меня есть следующий тип документа, который задокументирован в http://www.w3schools.com/html5/tag_doctype.asp:
<!DOCTYPE html>
Я не знаком с использованием HTML 5 или нового типа документа, поэтому я с подозрением отношусь к нему.Я также хостинг на Apache с Mono, так что, возможно, это то, что искажает линию.
Страница, о которой идет речь, находится по адресу: http://openancestry.org/FamilyTree/Simpsons
Кто-нибудь видел это раньше или знает, почему я не могу использоватьСинтаксис «if IE»?
ОБНОВЛЕНИЕ: Ну, я почти уверен, что это либо Mono, либо Apache, который искажает HTML, поэтому я использовал обходной путь ниже, который добавляет метатег совместимости для IE8 и включает excanvas для любогоIE, предшествующий IE9.Я все еще буду благодарен за любые ответы о том, почему HTML искажается.
<% if (Request.Browser.Browser.Contains("IE") && float.Parse(Request.Browser.Version) < 9) { %>
<% if (float.Parse(Request.Browser.Version) > 7) { %>
<meta http-equiv="X-UA-Compatible" content="IE=7" />
<% } %>
<script type="text/javascript" src="../../Scripts/excanvas.js"></script>
<% } %>