Надо подключить дополнительный CSS, если в браузере отключен Javascript.
Сделал так, но это не валидно, потому что по стандарту 4.01 Transitional тег noscript можно размещать только в body.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles.css">
<noscript><link rel="stylesheet" type="text/css" href="styles_nojs.css"></noscript>
<title>Название</title>
</head>
<body>
...
</body>
Можно сделать так, но это тоже не валидно, потому что по стандарту 4.01 Transitional тег link можно размещать только в head.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles.css">
<title>Название</title>
</head>
<body>
<noscript><link rel="stylesheet" type="text/css" href="styles_nojs.css"></noscript>
...
</body>
Может есть какой-то способ? Не хочется делать костыли, чтоб при загрузке страницы JS удалял и добавлял стили.
Пробовал поставить
<!DOCTYPE html>
. В HTML5 тег noscript можно размещать в head. Но тогда в моем коде из-за отличий от стандарта 4.01 Transitional невалидностей становится во много раз больше.
Можно ли оставить первый вариант? Понятно, что браузеры понимают и все работает. Просто я не совсем понимаю, на сколько важна валидность. Какие могут быть неприятности и проблемы от такой невалидности?