Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Здравствуйте, Михаил!
В скрипте я сделал бегущую строку
<script type="text/javascript">
document.write ("<marquee width='400px'>Текст</marguee>"
![](/images/smiles/sm3.png)
;
</script>
Строка появляется на странице, но валидатор выдает ошибку (текст ниже). Пишет что тег не открыт, хотя тег открыт. Скажите, пожалуйста, что это значит и как "подружить" тег с валидатором (может надо что в скрипт дописать?)
И еще заметил такую вещь, если в коде под бегущей строкой написать текст, то он оказывается "бегущим" (хотя текст не помещен в контейнер <marquee>
end tag for element "MARGUEE" which is not open
document.write ("<marquee width='400px'>Текст</marguee>"
![](/images/smiles/sm3.png)
;
The Validator found an end tag for the above element, but that element is not currently open. This is often caused by a leftover end tag from an element that was removed during editing, or by an implicitly closed element (if you have an error related to an element being used where it is not allowed, this is almost certainly the case). In the latter case this error will disappear as soon as you fix the original problem.
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
http://myrusakov.ru/valid-javascript.html
Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Спасибо за статью! Полезно было ее прочитать! Но в моем случае, она не помогла - те же проблемы остались, хотя сделал как написано. Может дело в Doctype или в самом теге <marquee>?
Вот полный код.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Бегущая строка</title>
</head>
<body>
<p>Бегущая строка</p>
<div>
<script type="text/javascript">
//<![CDATA[
document.write ("<marquee width='400px'>Текст</marguee>"
![](/images/smiles/sm3.png)
;
//]]>
</script>
</div>
<p>Текст под бегущей строкой</p>
</body>
</html>
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Закрывающий тег написан с ошибкой. q и g - это разные символы.
Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Михаил! Большое спасибо! После того, как исправил написание тега marquee бегущая строка стала работать как надо. Но вот вадидность она почему то опять не проходит. Может это потому что тег marquee сам по себе невалиден?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Бегущая строка</title>
</head>
<body>
<script type="text/javascript">
//<![CDATA[
document.write ("<marquee behavior='alternate' width='200px'>Текст</marquee>"
![](/images/smiles/sm3.png)
;
//]]>
</script>
</body>
</html>
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
document.write ("<marquee behavior='alternate' width='200px'>Текст<\/marquee>"
![](/images/smiles/sm3.png)
; - попробуйте так.
Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Большое спасибо! Теперь бегущая строка валидная! Даже не предполагал, что в закрывающем теге можно поставить обратный слэш и при этом код валидный!