ASP.NET MVC автоматически добавляет косую черту в пустые теги - PullRequest
0 голосов
/ 31 марта 2012

У меня есть сайт asp.net mvc с главной страницей, и у него есть следующий тег в голове.

<head runat="server">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">

Но когда я открываю источник в любом браузере, метатег отображается как

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

Кто добавляет / в конец как />

Проблема в том, что когда сайт проверяется с помощью валидатора w3, появляется ошибка, указывающая, что метатег должен быть закрыт как> не как />. Но я не могу найти, как создается />.

Тип документа

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Сайт находится на сайте http://tipila.com, если вы хотите увидеть его сами.

Я совершенно невежественен. Любая помощь ценится.

Это происходит как в казино, так и в IIS 7

.

Ответы [ 2 ]

3 голосов
/ 01 апреля 2012

Как упоминает ZippyV, проблема в том, что среда выполнения asp.net переписывает ваши теги, потому что они включены в элемент управления сервером (runat = "server"). Я бы предложил не использовать его.

Кроме того, вы должны указать X-UA-Compatible как заголовок, а не как метатег. Это позволяет браузеру выбрать правильный режим ДО того, как он начнет отображать страницу.

Как пример:

void Application_BeginRequest()   
{ 
    Response.AppendHeader("X-UA-Compatible", "IE=edge");
} 
3 голосов
/ 31 марта 2012

Попробуйте удалить атрибут runat="server" из тега head.

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