XHTML 1.0 Строгое (или переходное) соответствие в ASP.NET 2.0 / 3.5 - PullRequest
10 голосов
/ 01 октября 2008

Существуют ли хорошие методы для проверки ASP.NET 2.0 в соответствии со строгим (или переходным) DTD XHTML 1.0? Мне интересно услышать некоторые идеи, прежде чем я раскрою суть HTTP-ответа.

Одной из основных проблем является сам тег формы, это вывод, который я получил от W3C, когда пытался проверить:

Line 13, Column 11: there is no attribute "name".
<form name="aspnetForm" method="post" action="Default.aspx" onsubmit="javascript

Этот тег очень важен для ASP.NET, как вы все знаете. Хммм.

Ответы [ 3 ]

11 голосов
/ 01 октября 2008

ASP.NET 2.0 и выше действительно может выводить строгий (или переходный) XHTML. Это, среди прочего, устранит вашу ошибку проверки «нет атрибута« имя »». Чтобы настроить это, обновите файл Web.config примерно так:

<system.web>
    ... other configuration goes here ...
    <xhtmlConformance mode="Strict" />
</system.web>

Для переходного XHTML используйте взамен mode="Transitional".

См. Как: настроить рендеринг XHTML на веб-сайтах ASP.NET на MSDN.

4 голосов
/ 01 октября 2008

Рассматривали ли вы ASP.NET MVC Framework ? Вероятно, будет лучшим выбором, если требуется строгое соблюдение XHTML. Вы получаете больший контроль над своей продукцией, но вы будете ходить по незнакомой территории, если вы уже знакомы с традиционной моделью ASP.NET.

2 голосов
/ 01 октября 2008

Можно изменить вывод элементов управления ASP.NET, используя такие методы, как Адаптеры CSS . Хотя я лично не рекомендую вам использовать их «из коробки», это может дать вам несколько советов по поводу хорошего решения.

Я обычно избегаю использования элементов управления ASP.NET, где это возможно, за исключением тех, которые не генерируют разметку самостоятельно, таких как элемент управления Repeater. Я хотел бы взглянуть на ASP.NET MVC Framework (на котором построен StackOverflow), так как это дает вам 100% контроль над разметкой.

...