Я просто проверял, действительно ли было положить элемент внутри элемента <noscript>
в качестве возврата для отображения динамического содержимого. Это подтверждено в порядке с HTML 5 DOCTYPE, но для HTML 4.01, я получаю следующее сообщение об ошибке:Почему элементы <iframe> не проверяются в HTML 4.01?
Line 9, Column 35: element "IFRAME" undefined
<iframe name="test" src="test.htm"></iframe>You have used the element named above in your document, but the document type you are using does not define an element of that name. This error is often caused by:
- incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Frameset" document type to get the "" element),
- by using vendor proprietary extensions such as "" or "" (this is usually fixed by using CSS to achieve the desired effect instead).
- by using upper-case tags in XHTML (in XHTML attributes and elements must be all lower-case).
Это то, что я вырезал HTML вниз:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>I AM YOUR DOCUMENT TITLE REPLACE ME</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div>
<iframe name="test" src="test.htm"></iframe>
</div>
</body>
</html>
элемент определяется в спецификацию HTML 4.01 по следующему адресу: http://www.w3.org/TR/html401/present/frames.html#h-16.5.
Он проходит с переходным doctype, поэтому, я думаю, мой вопрос: «Почему это запрещено в строгом доктрине, даже если оно определено в спецификации?».
Возможно, это недействительно в строгом DTD. Можете ли вы перейти к Transitional? – Craig
@Craig: Согласно W3Schools, все в порядке, но это первое, что я попробую. – Mikaveli
@Craig: вы правы, он проходит с переходным DTD - так почему он определен, но не разрешен? @Mikaveli: Я бы не стал полагаться на точность страниц W3Schools в любом случае. – jujurawrs