Я использую некоторый Javascript для отображения «поворота фотографий» в файле <div>. Однако, если JS не включен, у меня есть анимированный gif, который я хочу отобразить вместо этого. У меня действительно работает с этим кодом:
<div id="slideshow" class="show pics float-left">
<img src="images/banner-photos/new-01.png" width="343" height="228" alt="photo" />
<img src="images/banner-photos/new-02.png" width="343" height="228" alt="photo" />
<img src="images/banner-photos/new-03.png" width="343" height="228" alt="photo" />
</div>
<noscript>
<link href="css/hide-slideshow.css" rel="stylesheet" type="text/css" />
<p class="adjust"><img src="images/banner-photos/animation.gif" alt="slideshow" /></p>
</noscript>
Внешние файлы JS творят чудеса с файлом <div>. Классы в id="slideshow" задают размеры, отступы, поля, позиционирование и т. д. CSS-файл "hide-slideshow" выполняет "display:none" в #slideshow, а класс "adjust" для анимированного gif выполняет некоторые действия. толкать и тянуть, чтобы получить его там, где он должен быть (именно там было бы слайд-шоу, если бы оно не было скрыто).
Я тестировал это в FF3, IE7, IE8, Chrome и Safari (Win). Хорошей новостью является то, что это работает как шарм. Плохая новость заключается в том, что он не проходит проверку W3C. Я получаю сообщение об ошибке: «Тип документа не позволяет использовать элемент «ссылка» здесь».
Несмотря на то, что мой метод работает, он слишком неуклюж? Есть ли лучший способ показать один <div>, если JS включен, и другой <div>, если нет, таким образом, чтобы он работал в разных браузерах и проходил проверку?
Спасибо!