Синтаксис является действительным в некоторые места но не означает то же самое, как и в XHTML, поэтому не используйте их.
В HTML 4 <foo />
(где Foo это имя элемента определяется как EMPTY) означает то же самое, как <foo>>
что означает то же самое, как <foo>>
(хотя почти не браузер поддерживает синтаксис правильно, используемый в Emacs-W3 , но сломал совместимость со стандартом в пользу рендеринга так называемых HTML-совместимых документов XHTML 1.0).
Это, следовательно, действует в тех местах, где вы можете иметь >
, такие как где вы позволило <img>
, но не в других местах (например, <hr>
, который является дочерним элементом <body>
(в Strict)).
Взаимодействие с правилами для факультативных меток начала и конца добавляет больше осложнений. В Переходной документе, это справедливо:
<link …/>
<h1>Hello, world</h1>
и средства:
<link>
</head>
<body>
>
<h1>Hello, world</h1>
Это сокращенная синтаксис может быть полезным, или по крайней мере экономит время, для таких вещей, как:
<title/The quick brown fox/
вместо более подробного:
<title>The quick brown fox</title>
... но the syntax has never been well supported и в спецификации говорится, что этого следует избегать.
Знаете ли вы, поддерживает ли Emacs-W3 синтаксис NET в полном объеме? – Alohci
@Alohci - Не знаю, я просто шокировался, когда он засорял символы '>' на всех моих документах XHTML еще в 2000-х годах (что привело к тому, что я много узнал о том, как .NET «работал» в HTML) – Quentin
Lynx поддерживает сокращенный синтаксис и по сей день. – grawity