2012-03-31 2 views
0

У меня есть сайт asp.net mvc с главной страницей, и у него есть следующий тег в голове.ASP.NET MVC автоматически добавляет косую черту в пустые теги

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

Но когда я Гото просмотреть исходный код в любом браузере, мета тег отображается как

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

Кто добавляющий/до конца, как />

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

типа Doct является

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

Сайт в Интернете по адресу http://tipila.com, если вы хотите, чтобы видеть это для себя.

Я совершенно не знаю, что здесь. Любая помощь предоставляется.

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

+0

любопытно, если добавить после мета-тег, что происходит? –

+0

Вы не должны использовать runat = "server" в mvc, если вам не нужно. В чем причина этого? –

+1

Я упустил это :(, Он, должно быть, добавил дизайнер – Amila

ответ

3

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

3

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

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

В качестве примера:

void Application_BeginRequest() 
{ 
    Response.AppendHeader("X-UA-Compatible", "IE=edge"); 
} 
Смежные вопросы