Форум программистов, компьютерный форум, киберфорум
HTML, CSS
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.74/43: Рейтинг темы: голосов - 43, средняя оценка - 4.74
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562

Заголовки младших уровней

23.05.2012, 06:38. Показов 8428. Ответов 44
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Почему <h7></h7> не считается даже за абзац?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.05.2012, 06:38
Ответы с готовыми решениями:

Цикл: Создайте программу, где с помощью цикла for и метода write перебирались бы заголовки разных html-уровней.
Добрый день, помогите пожалуйста с задачей. Создайте программу, где с помощью цикла for и метода write перебирались бы заголовки разных...

HTTP заголовки. Как увидеть реальные принятые заголовки ?
файл php содержит readfile(блабла) больше ни чего! Если смотреть заголовки через Файрфорк или сервисы-сайты, то показывает...

Сумма k младших цифр
Здравствуйте, помогите создать маленькую прогу). Заданные натуральные числа n и k. Значение k не более количество цифр в десятичной...

44
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
01.06.2012, 05:56  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Василий Макогон Посмотреть сообщение
они не могут ничего говорить - их НЕТ В СТАНДАРТЕ
Ну и что? В стандарте ворда вообще 3 уровня, но в ворде автоматическое оглавление отлично составляется на 9 уровней. Это заголовки, а любые заголовки относятся к структуре.
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
01.06.2012, 06:25
Цитата Сообщение от taras atavin Посмотреть сообщение
Ну и что?
ни кто не запрещает придумывать свои теги и к ним атрибуты
браузеры так задуманы, в качестве тегов и их атрибутов могут использовать любой набор символов, но это не значит что это проходит валидацию, и нет гарантий что все браузеры одинаково их обработают
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
01.06.2012, 07:02  [ТС]
Если бы это было не валидно, то сочинять теги и атрибуты было бы нельзя, а всё, что разрешено стандартом и не содержит ошибок, валидно. Не валидно закрывать head после html:
HTML5
1
2
3
4
5
6
7
8
<html>
<head>
<title>эвристические технологии</title>
<body>
Эвристические технологии в образовании ....
</body>
</html>
</head>
. Не валидно центровать шрифт:
HTML5
1
2
3
4
5
6
7
8
<html>
<head>
<title>эвристические технологии</title>
</head>
<body>
<font align="center">Эвристические технологии в образовании</font> ....
</body>
</html>
.
0
 Аватар для Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
01.06.2012, 21:16
Цитата Сообщение от taras atavin Посмотреть сообщение
Ну и что? В стандарте ворда вообще 3 уровня
причем тут ворд? есть официальная спецификация языка HTML - в ней не предусмотрено заголовков > 6 уровня. это так сложно понять?

HTML - это не язык для визуализации. это язык для описания документа. любая отсебятина не дает никаких преимуществ просто потому, что это бессмысленно. HTML предназначен не только для браузерв в ПК, он по задумке может читаться устройствами для глухонемых, слепых и т.д. То, что вы введете несуществующие теги - вы обманете лишь себя. Поисковые системы наплюют на ваши теги h7-h12, их не оценит ни человек, ни ПС, ни броузероподобное устройство.
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
02.06.2012, 07:31
Цитата Сообщение от taras atavin Посмотреть сообщение
Если бы это было не валидно, то сочинять теги и атрибуты было бы нельзя, а всё, что разрешено стандартом и не содержит ошибок, валидно. Не валидно закрывать head после html:
taras atavin, понятия не имеет о валидаторах, чего проще, написать такой файл и отдать его валидатору
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html><head>
<title>345</title>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
 
</head>
 
<body>
 
<h1>text</h1>
<h7>text</h7>
 
</body>
</html>

Validation Output: 1 Error
Line 11, Column 4: element "H7" undefined
<h7>text</h7>



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 "<frameset>" element),
by using vendor proprietary extensions such as "<spacer>" or "<marquee>" (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).
другой валидатор, попроще, но тоже от w3.org
The "h7" element is not a recognized element. Is it misspelled?
Сочинять теги и атрибуты можно по другой причине. html это текстовый файл и при его чтении допустимы ошибки, парсер браузера обязан уметь их распознавать и так или иначе пытаться их исправлять

как то так
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.06.2012, 09:19  [ТС]
Цитата Сообщение от Василий Макогон Посмотреть сообщение
То, что вы введете несуществующие теги - вы обманете лишь себя
Разве?
Цитата Сообщение от Василий Макогон Посмотреть сообщение
HTML предназначен не только для браузерв в ПК, он по задумке может читаться устройствами для глухонемых, слепых и т.д.
Вот это как раз и есть обман себя, так как одна и та же страница не может быть одинаково хороша для зрячих и для слепых:
До сих пор дисплеи для незрячих, в которых используется шрифт Брайля, показывали лишь одну строчку за один раз.
, что затрудняет навигацию по сайту и требует специального дизайна каждой страницы и это относится не только к заголовкам, а ко всему размещению информации на странице и способу её подачи, для зрячих же предпочтительней полноэкранный дизайн, а при больших объёмах информации на сайте может быть уместно оглавление в отдельном диве слева, или справа, я для горизонтального совмещения двух дивов на одной высоте разнёс их по ячейкам таблицы. Глухонемым же вполне сойдёт и обычный браузер, так как ни каких ограничений по восприятию изображений они не имеют, если только они не слепоглухонемые. И аудиопорталы почемуто не критикются по мотиву существования глухонемых. Так почему страница с текстом не может быть свёрстана только для зрячих?
Исследователи разработали концепцию под названием «гидравлически-замковый механизм», который позволит «видеть» целую страницу, обновляемую системой для отображения шрифта Брайля.
Если доведут до ума, и если у конкретного слепого посетителя сайта будет именно такой дисплей, то потрудись ка объяснить хоть один недостаток заголовка седьмого уровня с его точки зрения.

Добавлено через 2 минуты
Цитата Сообщение от newJS Посмотреть сообщение
Сочинять теги и атрибуты можно по другой причине. html это текстовый файл и при его чтении допустимы ошибки, парсер браузера обязан уметь их распознавать и так или иначе пытаться их исправлять
Вот именно ошибки и не валидны, а текст это, или бинарник, значения не имеет.

Добавлено через 14 минут
Цитата Сообщение от newJS Посмотреть сообщение
taras atavin, понятия не имеет о валидаторах, чего проще, написать такой файл и отдать его валидатору
Это ты понятия не имеешь о семантике слова "валидность". В основе английское слово valid -
действительный , действующий, обоснованный, законный, имеющий силу, годный, правомерный, веский, уважительный, зачетный, надлежаще оформленный, юридически действительный, неоспоримый, надлежаще совершенный, достаточный с правовой точки зрения
, то есть правильный, допустимый. Русское слово "можно" тоже означает допустмость, так что "валидно" и "можно так делать" - синонимы, только в одном случае слово, а в другом целое предложение. invalid -
недействительный, неверный , больной, необоснованный, несостоятельный, нетрудоспособный, болезненный, юридически недействительный , не имеющий силы, не имеющий законной силы, не имеющий юридической силы, предназначенный для больных, имя существительное недействительность, инвалид, глагол
делаться инвалидом, делать инвалидом, освобождаться от военной службы по инвалидности , освобождать от военной службы по инвалидности
. Не правильный, не допустимый, ошибочный. Так что или можно, или нельзя. А описать отсебячий тег и аккуратно его применить везде, где подразумеваешь не предусмотренный стандартом слить абзаца случайно не возможно. Это можно сделать только специтально. И заметь: до <h6> он их тоже не повышает и даже очепятку aling вместо align не исправляет. Ты нападаешь на <h7>. А как на счёт
HTML5
1
2
3
4
<STYLE>
PWithIndent {text-indent: 20px;}
PWithoutIndent {text-indent: 0;}
</STYLE>
? Тоже не имеет смысла? Но ведь это просто два разных варианта абзаца с отступом и без. Любые - они в Африке любые. Или
HTML5
1
2
3
<STYLE>
HT {align: right}
</STYLE>
для названий таблиц? Кстати, звука там нет вообще, даже фоновой музыки, которую любят втыкать на многих сайтах. И отдельные окна с игродемой, казино, или пугалкой на тему вирусов в правом нижнем углу не выскакивают, как делается почти везде.

Добавлено через 5 минут
Тег <img> в стнадарте почему то есть, хотя слепым он не доступен. Есть и возможность прилепить ссылку к картинке и даже возможнсоть разобрать одну картинку на карту ссылок, где каждая часть изображения ведёт куда то в своё место. Это в стандарте есть, но не достпупно даже пользователям с узким каналом. Но это в стандрате есть. А у меня хоть графика не важна и можно отключить нафиг рисунки, кроме страниц, где будет описано как раз что такое растр, пиксел и "с чем их едят", но навигация и там не будет на графике.

Добавлено через 6 минут
Заголовки нужны не браузеру, а человеку, а человек их поймёт правильно.
0
 Аватар для Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
02.06.2012, 11:47
понятно. поциент скорее мертв.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.06.2012, 12:24  [ТС]
Василий Макогон, говори о себе. У меня же всё логично: есть оглавление и выдача поисковика и надо сделать так, чтоб ссылки различались по внешнему виду в зависимости от взаимоподчинения страниц, подичнение же страниц длинное, до восьмого уровня уже дошло. Разумеется, названия страниц - это заголовки. На основной же площади остальных страниц, кроме выдачи поиска, ссылок подзаголовне много они ограничены максимум двумя следующими уровнями, а вбольшинстве случаев одним. Но оглавление присутсвует всегда и там должны быть все ссыли. Если они не будут различаться по внешнему виду, то будет не понятно, где подчинённая лист дерева структуры, а где главная страница целого раздела. Юзать же при этом всегда <h1> и менять только оформление = плюнуть на семантику тега. Сама структура полностью логична, нет ни одной пары страниц, одна из которых подчинена другой, чтоб это подчинение не вытекало бы из контента обеих и их названий. Сайт просто большой. Кстати, попробуй на досуге сосчитать уровни разделов этого форума.

Добавлено через 7 минут
3 уровня только разделов + темы. Если ещё выделить заголовок для всего сайта, то набирается 5. Ни как ни 2-3 уровня на все. 6 не превышено? Эйси. Но слишком мелкие темы не найдут популярности в обсуждении. У меня же есть страницы и по паре абзацев, что в каком то смысле соотвествует заголовку отдельного поста.

Добавлено через 1 минуту
Если каждый пост на отделной странице, ну ка попробуй его найди без заголовков.

Добавлено через 5 минут
Уже 6. Но здесь темы валяются прямо в языках, даже если кого то заитнересует
C++
1
+
, то тема "расскажите об оператор +" будет прямо в языке, а у меня эта страница в "арифметических операторах", а та в "операторах". Отдельно стандартные типы.

Добавлено через 2 минуты
+= в "составных операторах присваивания", а она в "операторе присваивания", та в "операторах". У меня нет проблемы привлечения посетителей в мелкие разделы и темы, так как у меня вообще не обсуждение, а изложение.

Добавлено через 3 минуты
Для больших материалов (например, ГОСТ-ов) можно использовать все 8-мь уровней и ввести еще, если потребуется.
смотри здесь.
0
 Аватар для Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
02.06.2012, 12:45
У меня же всё логично: есть оглавление и выдача поисковика и надо сделать так, чтоб ссылки различались по внешнему виду
для внешнего вида есть CSS.
поисковики рассматривают документ исходя из спецификации языка и заголовки > 6 уровня для них - обычный текст заключенный в ничего не значащие для них теги.

Добавлено через 44 секунды
Для больших материалов (например, ГОСТ-ов) можно использовать все 8-мь уровней
какие ГОСТЫ? о чем речь? тебе дали ссылку на ОФИЦИАЛЬНУЮ спецификацию - там только 6 уровней.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.06.2012, 14:44  [ТС]
Цитата Сообщение от Василий Макогон Посмотреть сообщение
для внешнего вида есть CSS.
поисковики рассматривают документ исходя из спецификации языка и заголовки > 6 уровня для них - обычный текст заключенный в ничего не значащие для них теги.
Внутренний поиск у меня свой. Да и какое вообще дело поисковикам до структуры? Она нужна человеку, а боту не проблема просмотреть всё.

Добавлено через 10 минут
http://www.google.ru/advanced_search, http://yandex.ru/search/advanced. Где хоть какое то упоминание обо всех заголовках на странице? Получается <h1> - заголовок, <h2> - уже текст. Из этого следует, что и <h6> не существует? Так вот, такой тег есть. У меня все страницы имеют <h2> и только он учитывается внутренним поиском, но в выдаче и в оглавлении учитывается уровень каталога, где страница валяется и уровень заголовка заменяется в соответствии со структурой не отдельной страницы, а всего сайта.

Добавлено через 14 минут
Стороннему же поиску должна будет выдана страница с <h1>, генерируемая файлом index.php путём подстановки её контента в нужное место блочно-табличной вёрстки. Я использую rewrite_module, а в каталоге www ровно три файла: index.php, .htaccess и styles.css и нет ни каких подкаталогов, остальные же страницы на самом деле находятся в другом месте винчестера.
0
 Аватар для Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
02.06.2012, 17:19
Цитата Сообщение от taras atavin Посмотреть сообщение
Да и какое вообще дело поисковикам до структуры? Она нужна человеку, а боту
жесть))
людям не нужна структура документа, вы можете заголовки хоть div хоть span тегом оформлять. а вот ПС как раз нужна логическая структура документа.

я вообще поражаюсь как Вы упорно несете херню и не слушаете того, что вам пишет много людней. вас ткнули носом в официальную спецификацию и разжевали все по пунктам, но вы упорно придумываете какие-то глупые аргументы в защиту несуществующих тегов, которые почему-то должны работать и приносить пользу.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.06.2012, 18:10  [ТС]
Цитата Сообщение от Василий Макогон Посмотреть сообщение
людям не нужна структура документа,
когда в нём полторы строки.

Добавлено через 1 минуту
Цитата Сообщение от Василий Макогон Посмотреть сообщение
а вот ПС как раз нужна логическая структура документа.
зачем? Заголовок всей страницы - <h1>, "где угодно на странице" - оно где угодно и есть, а ни каких других вариантов поиска они не предлагают.

Добавлено через 3 минуты
Цитата Сообщение от Василий Макогон Посмотреть сообщение
вас ткнули носом в официальную спецификацию и
а где написано понятие "пользовательские теги"? И где написано, что в треугольных скобках под тегом <style> можно писать не только то, что уже есть в стандарте?

Добавлено через 2 минуты
Читай:
Библиотеки пользовательских тегов расширяют набор основных тегов HTML за счет элементов, определяемых программистами, и таким образом ...
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
02.06.2012, 18:12
taras atavin, По-хорошему, "пользовательские" теги надо сначала декларировать (в DTD) и импортировать в свою страницу.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.06.2012, 18:34  [ТС]
Сервер - машина, ни какой структуры он всё равно не поймёт. Вот есть у меня заголовок
HTML5
1
<h2><center>Оглавление</center></h2>
, любую валидацию он пройдёт, но ни один сервер не догадается, что значит "Оглавление". Внесёшь это слово? А я напишу
HTML5
1
<h2><center>Index</center><h2>
. Или переведу на любой другой язык. Или
HTML5
1
<h2><center>Название страниц</center><h2>
, или
HTML5
1
<h2><center>Ссылки на страницы</center><h2>
, или
HTML5
1
<h2><center>Список заголовков</center><h2>
, или даже
HTML5
1
<h2><center>Головы сайта</center><h2>
. Или вообще
HTML5
1
<h2><center>Голова</center><h2>
. Или
HTML5
1
<h2><center>Содержание</center><h2>
, а могу переврать до
HTML5
1
<h2><center>Содержимое сайта</center><h2>
Человеку свойственно догадываться, а сервер не справится.

Добавлено через 8 минут
Цитата Сообщение от Vovan-VE Посмотреть сообщение
По-хорошему, "пользовательские" теги надо сначала декларировать (в DTD) и импортировать в свою страницу.
А как?

Добавлено через 2 минуты
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
<!--
    This is HTML Strict DTD, which excludes the presentation 
    attributes and elements that W3C expects to phase out as 
    support for style sheets matures. Authors should use the Strict
    DTD when possible, but may use the Transitional DTD when support
    for presentation attribute and elements is required.
    
    HTML 4 includes mechanisms for style sheets, scripting,
    embedding objects, improved support for right to left and mixed
    direction text, and enhancements to forms for improved
    accessibility for people with disabilities.
 
          Draft: $Date: 1999/12/24 23:37:48 $
 
          Authors:
              Dave Raggett <dsr@w3.org>
              Arnaud Le Hors <lehors@w3.org>
              Ian Jacobs <ij@w3.org>
 
    Further information about HTML 4.01 is available at:
 
        http://www.w3.org/TR/1999/REC-html401-19991224
 
 
    The HTML 4.01 specification includes additional
    syntactic constraints that cannot be expressed within
    the DTDs.
 
-->
<!--
    Typical usage:
 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    ...
    </head>
    <body>
    ...
    </body>
    </html>
 
    The URI used as a system identifier with the public identifier allows
    the user agent to download the DTD and entity sets as needed.
 
    The FPI for the Transitional HTML 4.01 DTD is:
 
        "-//W3C//DTD HTML 4.01 Transitional//EN"
 
    This version of the transitional DTD is:
 
        http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd
 
    If you are writing a document that includes frames, use 
    the following FPI:
 
        "-//W3C//DTD HTML 4.01 Frameset//EN"
 
    This version of the frameset DTD is:
 
        http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd
 
    Use the following (relative) URIs to refer to 
    the DTDs and entity definitions of this specification:
 
    "strict.dtd"
    "loose.dtd"
    "frameset.dtd"
    "HTMLlat1.ent"
    "HTMLsymbol.ent"
    "HTMLspecial.ent"
 
-->
 
<!--================== Imported Names ====================================-->
<!-- Feature Switch for frameset documents -->
<!ENTITY % HTML.Frameset "IGNORE">
 
<!ENTITY % ContentType "CDATA"
    -- media type, as per [RFC2045]
    -->
 
<!ENTITY % ContentTypes "CDATA"
    -- comma-separated list of media types, as per [RFC2045]
    -->
 
<!ENTITY % Charset "CDATA"
    -- a character encoding, as per [RFC2045]
    -->
 
<!ENTITY % Charsets "CDATA"
    -- a space-separated list of character encodings, as per [RFC2045]
    -->
 
<!ENTITY % LanguageCode "NAME"
    -- a language code, as per [RFC1766]
    -->
 
<!ENTITY % Character "CDATA"
    -- a single character from [ISO10646] 
    -->
 
<!ENTITY % LinkTypes "CDATA"
    -- space-separated list of link types
    -->
 
<!ENTITY % MediaDesc "CDATA"
    -- single or comma-separated list of media descriptors
    -->
 
<!ENTITY % URI "CDATA"
    -- a Uniform Resource Identifier,
       see [URI]
    -->
 
<!ENTITY % Datetime "CDATA" -- date and time information. ISO date format -->
 
 
<!ENTITY % Script "CDATA" -- script expression -->
 
<!ENTITY % StyleSheet "CDATA" -- style sheet data -->
 
 
 
<!ENTITY % Text "CDATA">
 
 
<!-- Parameter Entities -->
 
<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|OBJECT" -- repeatable head elements -->
 
<!ENTITY % heading "H1|H2|H3|H4|H5|H6|H7|H8|H9|H10|H11|H12">
 
<!ENTITY % list "UL | OL">
 
<!ENTITY % preformatted "PRE">
 
 
<!--================ Character mnemonic entities =========================-->
 
<!ENTITY % HTMLlat1 PUBLIC
   "-//W3C//ENTITIES Latin1//EN//HTML"
   "HTMLlat1.ent">
%HTMLlat1;
 
<!ENTITY % HTMLsymbol PUBLIC
   "-//W3C//ENTITIES Symbols//EN//HTML"
   "HTMLsymbol.ent">
%HTMLsymbol;
 
<!ENTITY % HTMLspecial PUBLIC
   "-//W3C//ENTITIES Special//EN//HTML"
   "HTMLspecial.ent">
%HTMLspecial;
<!--=================== Generic Attributes ===============================-->
 
<!ENTITY % coreattrs
 "id          ID             #IMPLIED  -- document-wide unique id --
  class       CDATA          #IMPLIED  -- space-separated list of classes --
  style       %StyleSheet;   #IMPLIED  -- associated style info --
  title       %Text;         #IMPLIED  -- advisory title --"
  >
 
<!ENTITY % i18n
 "lang        %LanguageCode; #IMPLIED  -- language code --
  dir         (ltr|rtl)      #IMPLIED  -- direction for weak/neutral text --"
  >
 
<!ENTITY % events
 "onclick     %Script;       #IMPLIED  -- a pointer button was clicked --
  ondblclick  %Script;       #IMPLIED  -- a pointer button was double clicked--
  onmousedown %Script;       #IMPLIED  -- a pointer button was pressed down --
  onmouseup   %Script;       #IMPLIED  -- a pointer button was released --
  onmouseover %Script;       #IMPLIED  -- a pointer was moved onto --
  onmousemove %Script;       #IMPLIED  -- a pointer was moved within --
  onmouseout  %Script;       #IMPLIED  -- a pointer was moved away --
  onkeypress  %Script;       #IMPLIED  -- a key was pressed and released --
  onkeydown   %Script;       #IMPLIED  -- a key was pressed down --
  onkeyup     %Script;       #IMPLIED  -- a key was released --"
  >
 
<!-- Reserved Feature Switch -->
<!ENTITY % HTML.Reserved "IGNORE">
 
<!-- The following attributes are reserved for possible future use -->
<![ %HTML.Reserved; [
<!ENTITY % reserved
 "datasrc     %URI;          #IMPLIED  -- a single or tabular Data Source --
  datafld     CDATA          #IMPLIED  -- the property or column name --
  dataformatas (plaintext|html) plaintext -- text or html --"
  >
]]>
 
<!ENTITY % reserved "">
 
<!ENTITY % attrs "%coreattrs; %i18n; %events;">
 
 
<!--=================== Text Markup ======================================-->
 
<!ENTITY % fontstyle
 "TT | I | B | BIG | SMALL">
 
<!ENTITY % phrase "EM | STRONG | DFN | CODE |
                   SAMP | KBD | VAR | CITE | ABBR | ACRONYM" >
 
<!ENTITY % special
   "A | IMG | OBJECT | BR | SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO">
 
<!ENTITY % formctrl "INPUT | SELECT | TEXTAREA | LABEL | BUTTON">
 
<!-- %inline; covers inline or "text-level" elements -->
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">
 
<!ELEMENT (%fontstyle;|%phrase;) - - (%inline;)*>
<!ATTLIST (%fontstyle;|%phrase;)
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT (SUB|SUP) - - (%inline;)*    -- subscript, superscript -->
<!ATTLIST (SUB|SUP)
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT SPAN - - (%inline;)*         -- generic language/style container -->
<!ATTLIST SPAN
  %attrs;                              -- %coreattrs, %i18n, %events --
  %reserved;                   -- reserved for possible future use --
  >
 
<!ELEMENT BDO - - (%inline;)*          -- I18N BiDi over-ride -->
<!ATTLIST BDO
  %coreattrs;                          -- id, class, style, title --
  lang        %LanguageCode; #IMPLIED  -- language code --
  dir         (ltr|rtl)      #REQUIRED -- directionality --
  >
 
 
<!ELEMENT BR - O EMPTY                 -- forced line break -->
<!ATTLIST BR
  %coreattrs;                          -- id, class, style, title --
  >
 
<!--================== HTML content models ===============================-->
 
<!--
    HTML has two basic content models:
 
        %inline;     character level elements and text strings
        %block;      block-like elements e.g. paragraphs and lists
-->
 
<!ENTITY % block
     "P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT |
      BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS">
 
<!ENTITY % flow "%block; | %inline;">
 
<!--=================== Document Body ====================================-->
 
<!ELEMENT BODY O O (%block;|SCRIPT)+ +(INS|DEL) -- document body -->
<!ATTLIST BODY
  %attrs;                              -- %coreattrs, %i18n, %events --
  onload          %Script;   #IMPLIED  -- the document has been loaded --
  onunload        %Script;   #IMPLIED  -- the document has been removed --
  >
 
<!ELEMENT ADDRESS - - (%inline;)* -- information on author -->
<!ATTLIST ADDRESS
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT DIV - - (%flow;)*            -- generic language/style container -->
<!ATTLIST DIV
  %attrs;                              -- %coreattrs, %i18n, %events --
  %reserved;                           -- reserved for possible future use --
  >
 
 
<!--================== The Anchor Element ================================-->
 
<!ENTITY % Shape "(rect|circle|poly|default)">
<!ENTITY % Coords "CDATA" -- comma-separated list of lengths -->
 
<!ELEMENT A - - (%inline;)* -(A)       -- anchor -->
<!ATTLIST A
  %attrs;                              -- %coreattrs, %i18n, %events --
  charset     %Charset;      #IMPLIED  -- char encoding of linked resource --
  type        %ContentType;  #IMPLIED  -- advisory content type --
  name        CDATA          #IMPLIED  -- named link end --
  href        %URI;          #IMPLIED  -- URI for linked resource --
  hreflang    %LanguageCode; #IMPLIED  -- language code --
  rel         %LinkTypes;    #IMPLIED  -- forward link types --
  rev         %LinkTypes;    #IMPLIED  -- reverse link types --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  shape       %Shape;        rect      -- for use with client-side image maps --
  coords      %Coords;       #IMPLIED  -- for use with client-side image maps --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  >
 
<!--================== Client-side image maps ============================-->
 
<!-- These can be placed in the same document or grouped in a
     separate document although this isn't yet widely supported -->
 
<!ELEMENT MAP - - ((%block;) | AREA)+ -- client-side image map -->
<!ATTLIST MAP
  %attrs;                              -- %coreattrs, %i18n, %events --
  name        CDATA          #REQUIRED -- for reference by usemap --
  >
 
<!ELEMENT AREA - O EMPTY               -- client-side image map area -->
<!ATTLIST AREA
  %attrs;                              -- %coreattrs, %i18n, %events --
  shape       %Shape;        rect      -- controls interpretation of coords --
  coords      %Coords;       #IMPLIED  -- comma-separated list of lengths --
  href        %URI;          #IMPLIED  -- URI for linked resource --
  nohref      (nohref)       #IMPLIED  -- this region has no action --
  alt         %Text;         #REQUIRED -- short description --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  >
 
<!--================== The LINK Element ==================================-->
 
<!--
  Relationship values can be used in principle:
 
   a) for document specific toolbars/menus when used
      with the LINK element in document head e.g.
        start, contents, previous, next, index, end, help
   b) to link to a separate style sheet (rel=stylesheet)
   c) to make a link to a script (rel=script)
   d) by stylesheets to control how collections of
      html nodes are rendered into printed documents
   e) to make a link to a printable version of this document
      e.g. a postscript or pdf version (rel=alternate media=print)
-->
 
<!ELEMENT LINK - O EMPTY               -- a media-independent link -->
<!ATTLIST LINK
  %attrs;                              -- %coreattrs, %i18n, %events --
  charset     %Charset;      #IMPLIED  -- char encoding of linked resource --
  href        %URI;          #IMPLIED  -- URI for linked resource --
  hreflang    %LanguageCode; #IMPLIED  -- language code --
  type        %ContentType;  #IMPLIED  -- advisory content type --
  rel         %LinkTypes;    #IMPLIED  -- forward link types --
  rev         %LinkTypes;    #IMPLIED  -- reverse link types --
  media       %MediaDesc;    #IMPLIED  -- for rendering on these media --
  >
 
<!--=================== Images ===========================================-->
 
<!-- Length defined in strict DTD for cellpadding/cellspacing -->
<!ENTITY % Length "CDATA" -- nn for pixels or nn% for percentage length -->
<!ENTITY % MultiLength "CDATA" -- pixel, percentage, or relative -->
 
<![ %HTML.Frameset; [
<!ENTITY % MultiLengths "CDATA" -- comma-separated list of MultiLength -->
]]>
 
<!ENTITY % Pixels "CDATA" -- integer representing length in pixels -->
 
 
<!-- To avoid problems with text-only UAs as well as 
   to make image content understandable and navigable 
   to users of non-visual UAs, you need to provide
   a description with ALT, and avoid server-side image maps -->
<!ELEMENT IMG - O EMPTY                -- Embedded image -->
<!ATTLIST IMG
  %attrs;                              -- %coreattrs, %i18n, %events --
  src         %URI;          #REQUIRED -- URI of image to embed --
  alt         %Text;         #REQUIRED -- short description --
  longdesc    %URI;          #IMPLIED  -- link to long description
                                          (complements alt) --
  name        CDATA          #IMPLIED  -- name of image for scripting --
  height      %Length;       #IMPLIED  -- override height --
  width       %Length;       #IMPLIED  -- override width --
  usemap      %URI;          #IMPLIED  -- use client-side image map --
  ismap       (ismap)        #IMPLIED  -- use server-side image map --
  >
 
<!-- USEMAP points to a MAP element which may be in this document
  or an external document, although the latter is not widely supported -->
 
<!--==================== OBJECT ======================================-->
<!--
  OBJECT is used to embed objects as part of HTML pages 
  PARAM elements should precede other content. SGML mixed content
  model technicality precludes specifying this formally ...
-->
 
<!ELEMENT OBJECT - - (PARAM | %flow;)*
 -- generic embedded object -->
<!ATTLIST OBJECT
  %attrs;                              -- %coreattrs, %i18n, %events --
  declare     (declare)      #IMPLIED  -- declare but don't instantiate flag --
  classid     %URI;          #IMPLIED  -- identifies an implementation --
  codebase    %URI;          #IMPLIED  -- base URI for classid, data, archive--
  data        %URI;          #IMPLIED  -- reference to object's data --
  type        %ContentType;  #IMPLIED  -- content type for data --
  codetype    %ContentType;  #IMPLIED  -- content type for code --
  archive     CDATA          #IMPLIED  -- space-separated list of URIs --
  standby     %Text;         #IMPLIED  -- message to show while loading --
  height      %Length;       #IMPLIED  -- override height --
  width       %Length;       #IMPLIED  -- override width --
  usemap      %URI;          #IMPLIED  -- use client-side image map --
  name        CDATA          #IMPLIED  -- submit as part of form --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  %reserved;                           -- reserved for possible future use --
  >
 
<!ELEMENT PARAM - O EMPTY              -- named property value -->
<!ATTLIST PARAM
  id          ID             #IMPLIED  -- document-wide unique id --
  name        CDATA          #REQUIRED -- property name --
  value       CDATA          #IMPLIED  -- property value --
  valuetype   (DATA|REF|OBJECT) DATA   -- How to interpret value --
  type        %ContentType;  #IMPLIED  -- content type for value
                                          when valuetype=ref --
  >
 
 
<!--=================== Horizontal Rule ==================================-->
 
<!ELEMENT HR - O EMPTY -- horizontal rule -->
<!ATTLIST HR
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--=================== Paragraphs =======================================-->
 
<!ELEMENT P - O (%inline;)*            -- paragraph -->
<!ATTLIST P
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--=================== Headings =========================================-->
 
<!--
  There are six levels of headings from H1 (the most important)
  to H12 (the least important).
-->
 
<!ELEMENT (%heading;)  - - (%inline;)* -- heading -->
<!ATTLIST (%heading;)
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--=================== Preformatted Text ================================-->
 
<!-- excludes markup for images and changes in font size -->
<!ENTITY % pre.exclusion "IMG|OBJECT|BIG|SMALL|SUB|SUP">
 
<!ELEMENT PRE - - (%inline;)* -(%pre.exclusion;) -- preformatted text -->
<!ATTLIST PRE
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--===================== Inline Quotes ==================================-->
 
<!ELEMENT Q - - (%inline;)*            -- short inline quotation -->
<!ATTLIST Q
  %attrs;                              -- %coreattrs, %i18n, %events --
  cite        %URI;          #IMPLIED  -- URI for source document or msg --
  >
 
<!--=================== Block-like Quotes ================================-->
 
<!ELEMENT BLOCKQUOTE - - (%block;|SCRIPT)+ -- long quotation -->
<!ATTLIST BLOCKQUOTE
  %attrs;                              -- %coreattrs, %i18n, %events --
  cite        %URI;          #IMPLIED  -- URI for source document or msg --
  >
 
<!--=================== Inserted/Deleted Text ============================-->
 
 
<!-- INS/DEL are handled by inclusion on BODY -->
<!ELEMENT (INS|DEL) - - (%flow;)*      -- inserted text, deleted text -->
<!ATTLIST (INS|DEL)
  %attrs;                              -- %coreattrs, %i18n, %events --
  cite        %URI;          #IMPLIED  -- info on reason for change --
  datetime    %Datetime;     #IMPLIED  -- date and time of change --
  >
 
<!--=================== Lists ============================================-->
 
<!-- definition lists - DT for term, DD for its definition -->
 
<!ELEMENT DL - - (DT|DD)+              -- definition list -->
<!ATTLIST DL
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT DT - O (%inline;)*           -- definition term -->
<!ELEMENT DD - O (%flow;)*             -- definition description -->
<!ATTLIST (DT|DD)
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
 
<!ELEMENT OL - - (LI)+                 -- ordered list -->
<!ATTLIST OL
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!-- Unordered Lists (UL) bullet styles -->
<!ELEMENT UL - - (LI)+                 -- unordered list -->
<!ATTLIST UL
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
 
 
<!ELEMENT LI - O (%flow;)*             -- list item -->
<!ATTLIST LI
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--================ Forms ===============================================-->
<!ELEMENT FORM - - (%block;|SCRIPT)+ -(FORM) -- interactive form -->
<!ATTLIST FORM
  %attrs;                              -- %coreattrs, %i18n, %events --
  action      %URI;          #REQUIRED -- server-side form handler --
  method      (GET|POST)     GET       -- HTTP method used to submit the form--
  enctype     %ContentType;  "application/x-www-form-urlencoded"
  accept      %ContentTypes; #IMPLIED  -- list of MIME types for file upload --
  name        CDATA          #IMPLIED  -- name of form for scripting --
  onsubmit    %Script;       #IMPLIED  -- the form was submitted --
  onreset     %Script;       #IMPLIED  -- the form was reset --
  accept-charset %Charsets;  #IMPLIED  -- list of supported charsets --
  >
 
<!-- Each label must not contain more than ONE field -->
<!ELEMENT LABEL - - (%inline;)* -(LABEL) -- form field label text -->
<!ATTLIST LABEL
  %attrs;                              -- %coreattrs, %i18n, %events --
  for         IDREF          #IMPLIED  -- matches field ID value --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  >
 
<!ENTITY % InputType
  "(TEXT | PASSWORD | CHECKBOX |
    RADIO | SUBMIT | RESET |
    FILE | HIDDEN | IMAGE | BUTTON)"
   >
 
<!-- attribute name required for all but submit and reset -->
<!ELEMENT INPUT - O EMPTY              -- form control -->
<!ATTLIST INPUT
  %attrs;                              -- %coreattrs, %i18n, %events --
  type        %InputType;    TEXT      -- what kind of widget is needed --
  name        CDATA          #IMPLIED  -- submit as part of form --
  value       CDATA          #IMPLIED  -- Specify for radio buttons and checkboxes --
  checked     (checked)      #IMPLIED  -- for radio buttons and check boxes --
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  readonly    (readonly)     #IMPLIED  -- for text and passwd --
  size        CDATA          #IMPLIED  -- specific to each type of field --
  maxlength   NUMBER         #IMPLIED  -- max chars for text fields --
  src         %URI;          #IMPLIED  -- for fields with images --
  alt         CDATA          #IMPLIED  -- short description --
  usemap      %URI;          #IMPLIED  -- use client-side image map --
  ismap       (ismap)        #IMPLIED  -- use server-side image map --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  onselect    %Script;       #IMPLIED  -- some text was selected --
  onchange    %Script;       #IMPLIED  -- the element value was changed --
  accept      %ContentTypes; #IMPLIED  -- list of MIME types for file upload --
  %reserved;                           -- reserved for possible future use --
  >
 
<!ELEMENT SELECT - - (OPTGROUP|OPTION)+ -- option selector -->
<!ATTLIST SELECT
  %attrs;                              -- %coreattrs, %i18n, %events --
  name        CDATA          #IMPLIED  -- field name --
  size        NUMBER         #IMPLIED  -- rows visible --
  multiple    (multiple)     #IMPLIED  -- default is single selection --
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  onchange    %Script;       #IMPLIED  -- the element value was changed --
  %reserved;                           -- reserved for possible future use --
  >
 
<!ELEMENT OPTGROUP - - (OPTION)+ -- option group -->
<!ATTLIST OPTGROUP
  %attrs;                              -- %coreattrs, %i18n, %events --
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  label       %Text;         #REQUIRED -- for use in hierarchical menus --
  >
 
<!ELEMENT OPTION - O (#PCDATA)         -- selectable choice -->
<!ATTLIST OPTION
  %attrs;                              -- %coreattrs, %i18n, %events --
  selected    (selected)     #IMPLIED
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  label       %Text;         #IMPLIED  -- for use in hierarchical menus --
  value       CDATA          #IMPLIED  -- defaults to element content --
  >
 
<!ELEMENT TEXTAREA - - (#PCDATA)       -- multi-line text field -->
<!ATTLIST TEXTAREA
  %attrs;                              -- %coreattrs, %i18n, %events --
  name        CDATA          #IMPLIED
  rows        NUMBER         #REQUIRED
  cols        NUMBER         #REQUIRED
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  readonly    (readonly)     #IMPLIED
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  onselect    %Script;       #IMPLIED  -- some text was selected --
  onchange    %Script;       #IMPLIED  -- the element value was changed --
  %reserved;                           -- reserved for possible future use --
  >
 
<!--
  #PCDATA is to solve the mixed content problem,
  per specification only whitespace is allowed there!
 -->
<!ELEMENT FIELDSET - - (#PCDATA,LEGEND,(%flow;)*) -- form control group -->
<!ATTLIST FIELDSET
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT LEGEND - - (%inline;)*       -- fieldset legend -->
 
<!ATTLIST LEGEND
  %attrs;                              -- %coreattrs, %i18n, %events --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  >
 
<!ELEMENT BUTTON - -
     (%flow;)* -(A|%formctrl;|FORM|FIELDSET)
     -- push button -->
<!ATTLIST BUTTON
  %attrs;                              -- %coreattrs, %i18n, %events --
  name        CDATA          #IMPLIED
  value       CDATA          #IMPLIED  -- sent to server when submitted --
  type        (button|submit|reset) submit -- for use as form button --
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  %reserved;                           -- reserved for possible future use --
  >
 
<!--======================= Tables =======================================-->
 
<!-- IETF HTML table standard, see [RFC1942] -->
 
<!--
 The BORDER attribute sets the thickness of the frame around the
 table. The default units are screen pixels.
 
 The FRAME attribute specifies which parts of the frame around
 the table should be rendered. The values are not the same as
 CALS to avoid a name clash with the VALIGN attribute.
 
 The value "border" is included for backwards compatibility with
 <TABLE BORDER> which yields frame=border and border=implied
 For <TABLE BORDER=1> you get border=1 and frame=implied. In this
 case, it is appropriate to treat this as frame=border for backwards
 compatibility with deployed browsers.
-->
<!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
 
<!--
 The RULES attribute defines which rules to draw between cells:
 
 If RULES is absent then assume:
     "none" if BORDER is absent or BORDER=0 otherwise "all"
-->
 
<!ENTITY % TRules "(none | groups | rows | cols | all)">
  
<!-- horizontal placement of table relative to document -->
<!ENTITY % TAlign "(left|center|right)">
 
<!-- horizontal alignment attributes for cell contents -->
<!ENTITY % cellhalign
  "align      (left|center|right|justify|char) #IMPLIED
   char       %Character;    #IMPLIED  -- alignment char, e.g. char=':' --
   charoff    %Length;       #IMPLIED  -- offset for alignment char --"
  >
 
<!-- vertical alignment attributes for cell contents -->
<!ENTITY % cellvalign
  "valign     (top|middle|bottom|baseline) #IMPLIED"
  >
 
<!ELEMENT TABLE - -
     (CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)>
<!ELEMENT CAPTION  - - (%inline;)*     -- table caption -->
<!ELEMENT THEAD    - O (TR)+           -- table header -->
<!ELEMENT TFOOT    - O (TR)+           -- table footer -->
<!ELEMENT TBODY    O O (TR)+           -- table body -->
<!ELEMENT COLGROUP - O (COL)*          -- table column group -->
<!ELEMENT COL      - O EMPTY           -- table column -->
<!ELEMENT TR       - O (TH|TD)+        -- table row -->
<!ELEMENT (TH|TD)  - O (%flow;)*       -- table header cell, table data cell-->
 
<!ATTLIST TABLE                        -- table element --
  %attrs;                              -- %coreattrs, %i18n, %events --
  summary     %Text;         #IMPLIED  -- purpose/structure for speech output--
  width       %Length;       #IMPLIED  -- table width --
  border      %Pixels;       #IMPLIED  -- controls frame width around table --
  frame       %TFrame;       #IMPLIED  -- which parts of frame to render --
  rules       %TRules;       #IMPLIED  -- rulings between rows and cols --
  cellspacing %Length;       #IMPLIED  -- spacing between cells --
  cellpadding %Length;       #IMPLIED  -- spacing within cells --
  %reserved;                           -- reserved for possible future use --
  datapagesize CDATA         #IMPLIED  -- reserved for possible future use --
  >
 
 
<!ATTLIST CAPTION
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--
COLGROUP groups a set of COL elements. It allows you to group
several semantically related columns together.
-->
<!ATTLIST COLGROUP
  %attrs;                              -- %coreattrs, %i18n, %events --
  span        NUMBER         1         -- default number of columns in group --
  width       %MultiLength;  #IMPLIED  -- default width for enclosed COLs --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
<!--
 COL elements define the alignment properties for cells in
 one or more columns.
 
 The WIDTH attribute specifies the width of the columns, e.g.
 
     width=64        width in screen pixels
     width=0.5*      relative width of 0.5
 
 The SPAN attribute causes the attributes of one
 COL element to apply to more than one column.
-->
<!ATTLIST COL                          -- column groups and properties --
  %attrs;                              -- %coreattrs, %i18n, %events --
  span        NUMBER         1         -- COL attributes affect N columns --
  width       %MultiLength;  #IMPLIED  -- column width specification --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
<!--
    Use THEAD to duplicate headers when breaking table
    across page boundaries, or for static headers when
    TBODY sections are rendered in scrolling panel.
 
    Use TFOOT to duplicate footers when breaking table
    across page boundaries, or for static footers when
    TBODY sections are rendered in scrolling panel.
 
    Use multiple TBODY sections when rules are needed
    between groups of table rows.
-->
<!ATTLIST (THEAD|TBODY|TFOOT)          -- table section --
  %attrs;                              -- %coreattrs, %i18n, %events --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
<!ATTLIST TR                           -- table row --
  %attrs;                              -- %coreattrs, %i18n, %events --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
 
<!-- Scope is simpler than headers attribute for common tables -->
<!ENTITY % Scope "(row|col|rowgroup|colgroup)">
 
<!-- TH is for headers, TD for data, but for cells acting as both use TD -->
<!ATTLIST (TH|TD)                      -- header or data cell --
  %attrs;                              -- %coreattrs, %i18n, %events --
  abbr        %Text;         #IMPLIED  -- abbreviation for header cell --
  axis        CDATA          #IMPLIED  -- comma-separated list of related headers--
  headers     IDREFS         #IMPLIED  -- list of id's for header cells --
  scope       %Scope;        #IMPLIED  -- scope covered by header cells --
  rowspan     NUMBER         1         -- number of rows spanned by cell --
  colspan     NUMBER         1         -- number of cols spanned by cell --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
 
<!--================ Document Head =======================================-->
<!-- %head.misc; defined earlier on as "SCRIPT|STYLE|META|LINK|OBJECT" -->
<!ENTITY % head.content "TITLE & BASE?">
 
<!ELEMENT HEAD O O (%head.content;) +(%head.misc;) -- document head -->
<!ATTLIST HEAD
  %i18n;                               -- lang, dir --
  profile     %URI;          #IMPLIED  -- named dictionary of meta info --
  >
 
<!-- The TITLE element is not considered part of the flow of text.
       It should be displayed, for example as the page header or
       window title. Exactly one title is required per document.
    -->
<!ELEMENT TITLE - - (#PCDATA) -(%head.misc;) -- document title -->
<!ATTLIST TITLE %i18n>
 
 
<!ELEMENT BASE - O EMPTY               -- document base URI -->
<!ATTLIST BASE
  href        %URI;          #REQUIRED -- URI that acts as base URI --
  >
 
<!ELEMENT META - O EMPTY               -- generic metainformation -->
<!ATTLIST META
  %i18n;                               -- lang, dir, for use with content --
  http-equiv  NAME           #IMPLIED  -- HTTP response header name  --
  name        NAME           #IMPLIED  -- metainformation name --
  content     CDATA          #REQUIRED -- associated information --
  scheme      CDATA          #IMPLIED  -- select form of content --
  >
 
<!ELEMENT STYLE - - %StyleSheet        -- style info -->
<!ATTLIST STYLE
  %i18n;                               -- lang, dir, for use with title --
  type        %ContentType;  #REQUIRED -- content type of style language --
  media       %MediaDesc;    #IMPLIED  -- designed for use with these media --
  title       %Text;         #IMPLIED  -- advisory title --
  >
 
<!ELEMENT SCRIPT - - %Script;          -- script statements -->
<!ATTLIST SCRIPT
  charset     %Charset;      #IMPLIED  -- char encoding of linked resource --
  type        %ContentType;  #REQUIRED -- content type of script language --
  src         %URI;          #IMPLIED  -- URI for an external script --
  defer       (defer)        #IMPLIED  -- UA may defer execution of script --
  event       CDATA          #IMPLIED  -- reserved for possible future use --
  for         %URI;          #IMPLIED  -- reserved for possible future use --
  >
 
<!ELEMENT NOSCRIPT - - (%block;)+
  -- alternate content container for non script-based rendering -->
<!ATTLIST NOSCRIPT
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--================ Document Structure ==================================-->
<!ENTITY % html.content "HEAD, BODY">
 
<!ELEMENT HTML O O (%html.content;)    -- document root element -->
<!ATTLIST HTML
  %i18n;                               -- lang, dir --
  >
пойдёт? И где я могу положить такой DTD? У себя в корне сайта можно?

Добавлено через 6 минут
Или
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
<!--
    This is HTML MY Strict DTD, which excludes the presentation 
    attributes and elements that W3C expects to phase out as 
    support for style sheets matures. Authors should use the Strict
    DTD when possible, but may use the Transitional DTD when support
    for presentation attribute and elements is required.
    
    HTML MY includes mechanisms for style sheets, scripting,
    embedding objects, improved support for right to left and mixed
    direction text, and enhancements to forms for improved
    accessibility for people with disabilities.
 
          Draft: $Date: 1999/12/24 23:37:48 $
 
          Authors:
              Dave Raggett <dsr@w3.org>
              Arnaud Le Hors <lehors@w3.org>
              Ian Jacobs <ij@w3.org>
 
    Further information about HTML MY is available at:
 
        http://94.232.111.255:8080
 
 
    The HTML MY specification includes additional
    syntactic constraints that cannot be expressed within
    the DTDs.
 
-->
<!--
    Typical usage:
 
    <!DOCTYPE HTML MY PUBLIC "-//W3C//DTD HTML MY //EN"
            "http:94.232.111.255:8080/html/strict.dtd">
    <html>
    <head>
    ...
    </head>
    <body>
    ...
    </body>
    </html>
 
    The URI used as a system identifier with the public identifier allows
    the user agent to download the DTD and entity sets as needed.
 
    The FPI for the Transitional HTML MY DTD is:
 
        "-//W3C//DTD HTML MY Transitional//EN"
 
    This version of the transitional DTD is:
 
        http://94.232.111.255/html/strict.dtd
 
    If you are writing a document that includes frames, use 
    the following FPI:
 
        "-//W3C//DTD HTML MY Frameset//EN"
 
    This version of the frameset DTD is:
 
        http://94.232.111.255/html/strict.dtd
 
    Use the following (relative) URIs to refer to 
    the DTDs and entity definitions of this specification:
 
    "strict.dtd"
    "loose.dtd"
    "frameset.dtd"
    "HTMLlat1.ent"
    "HTMLsymbol.ent"
    "HTMLspecial.ent"
 
-->
 
<!--================== Imported Names ====================================-->
<!-- Feature Switch for frameset documents -->
<!ENTITY % HTML.Frameset "IGNORE">
 
<!ENTITY % ContentType "CDATA"
    -- media type, as per [RFC2045]
    -->
 
<!ENTITY % ContentTypes "CDATA"
    -- comma-separated list of media types, as per [RFC2045]
    -->
 
<!ENTITY % Charset "CDATA"
    -- a character encoding, as per [RFC2045]
    -->
 
<!ENTITY % Charsets "CDATA"
    -- a space-separated list of character encodings, as per [RFC2045]
    -->
 
<!ENTITY % LanguageCode "NAME"
    -- a language code, as per [RFC1766]
    -->
 
<!ENTITY % Character "CDATA"
    -- a single character from [ISO10646] 
    -->
 
<!ENTITY % LinkTypes "CDATA"
    -- space-separated list of link types
    -->
 
<!ENTITY % MediaDesc "CDATA"
    -- single or comma-separated list of media descriptors
    -->
 
<!ENTITY % URI "CDATA"
    -- a Uniform Resource Identifier,
       see [URI]
    -->
 
<!ENTITY % Datetime "CDATA" -- date and time information. ISO date format -->
 
 
<!ENTITY % Script "CDATA" -- script expression -->
 
<!ENTITY % StyleSheet "CDATA" -- style sheet data -->
 
 
 
<!ENTITY % Text "CDATA">
 
 
<!-- Parameter Entities -->
 
<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|OBJECT" -- repeatable head elements -->
 
<!ENTITY % heading "H1|H2|H3|H4|H5|H6|H7|H8|H9|H10|H11|H12">
 
<!ENTITY % list "UL | OL">
 
<!ENTITY % preformatted "PRE">
 
 
<!--================ Character mnemonic entities =========================-->
 
<!ENTITY % HTMLlat1 PUBLIC
   "-//W3C//ENTITIES Latin1//EN//HTML"
   "HTMLlat1.ent">
%HTMLlat1;
 
<!ENTITY % HTMLsymbol PUBLIC
   "-//W3C//ENTITIES Symbols//EN//HTML"
   "HTMLsymbol.ent">
%HTMLsymbol;
 
<!ENTITY % HTMLspecial PUBLIC
   "-//W3C//ENTITIES Special//EN//HTML"
   "HTMLspecial.ent">
%HTMLspecial;
<!--=================== Generic Attributes ===============================-->
 
<!ENTITY % coreattrs
 "id          ID             #IMPLIED  -- document-wide unique id --
  class       CDATA          #IMPLIED  -- space-separated list of classes --
  style       %StyleSheet;   #IMPLIED  -- associated style info --
  title       %Text;         #IMPLIED  -- advisory title --"
  >
 
<!ENTITY % i18n
 "lang        %LanguageCode; #IMPLIED  -- language code --
  dir         (ltr|rtl)      #IMPLIED  -- direction for weak/neutral text --"
  >
 
<!ENTITY % events
 "onclick     %Script;       #IMPLIED  -- a pointer button was clicked --
  ondblclick  %Script;       #IMPLIED  -- a pointer button was double clicked--
  onmousedown %Script;       #IMPLIED  -- a pointer button was pressed down --
  onmouseup   %Script;       #IMPLIED  -- a pointer button was released --
  onmouseover %Script;       #IMPLIED  -- a pointer was moved onto --
  onmousemove %Script;       #IMPLIED  -- a pointer was moved within --
  onmouseout  %Script;       #IMPLIED  -- a pointer was moved away --
  onkeypress  %Script;       #IMPLIED  -- a key was pressed and released --
  onkeydown   %Script;       #IMPLIED  -- a key was pressed down --
  onkeyup     %Script;       #IMPLIED  -- a key was released --"
  >
 
<!-- Reserved Feature Switch -->
<!ENTITY % HTML.Reserved "IGNORE">
 
<!-- The following attributes are reserved for possible future use -->
<![ %HTML.Reserved; [
<!ENTITY % reserved
 "datasrc     %URI;          #IMPLIED  -- a single or tabular Data Source --
  datafld     CDATA          #IMPLIED  -- the property or column name --
  dataformatas (plaintext|html) plaintext -- text or html --"
  >
]]>
 
<!ENTITY % reserved "">
 
<!ENTITY % attrs "%coreattrs; %i18n; %events;">
 
 
<!--=================== Text Markup ======================================-->
 
<!ENTITY % fontstyle
 "TT | I | B | BIG | SMALL">
 
<!ENTITY % phrase "EM | STRONG | DFN | CODE |
                   SAMP | KBD | VAR | CITE | ABBR | ACRONYM" >
 
<!ENTITY % special
   "A | IMG | OBJECT | BR | SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO">
 
<!ENTITY % formctrl "INPUT | SELECT | TEXTAREA | LABEL | BUTTON">
 
<!-- %inline; covers inline or "text-level" elements -->
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">
 
<!ELEMENT (%fontstyle;|%phrase;) - - (%inline;)*>
<!ATTLIST (%fontstyle;|%phrase;)
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT (SUB|SUP) - - (%inline;)*    -- subscript, superscript -->
<!ATTLIST (SUB|SUP)
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT SPAN - - (%inline;)*         -- generic language/style container -->
<!ATTLIST SPAN
  %attrs;                              -- %coreattrs, %i18n, %events --
  %reserved;                   -- reserved for possible future use --
  >
 
<!ELEMENT BDO - - (%inline;)*          -- I18N BiDi over-ride -->
<!ATTLIST BDO
  %coreattrs;                          -- id, class, style, title --
  lang        %LanguageCode; #IMPLIED  -- language code --
  dir         (ltr|rtl)      #REQUIRED -- directionality --
  >
 
 
<!ELEMENT BR - O EMPTY                 -- forced line break -->
<!ATTLIST BR
  %coreattrs;                          -- id, class, style, title --
  >
 
<!--================== HTML content models ===============================-->
 
<!--
    HTML has two basic content models:
 
        %inline;     character level elements and text strings
        %block;      block-like elements e.g. paragraphs and lists
-->
 
<!ENTITY % block
     "P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT |
      BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS">
 
<!ENTITY % flow "%block; | %inline;">
 
<!--=================== Document Body ====================================-->
 
<!ELEMENT BODY O O (%block;|SCRIPT)+ +(INS|DEL) -- document body -->
<!ATTLIST BODY
  %attrs;                              -- %coreattrs, %i18n, %events --
  onload          %Script;   #IMPLIED  -- the document has been loaded --
  onunload        %Script;   #IMPLIED  -- the document has been removed --
  >
 
<!ELEMENT ADDRESS - - (%inline;)* -- information on author -->
<!ATTLIST ADDRESS
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT DIV - - (%flow;)*            -- generic language/style container -->
<!ATTLIST DIV
  %attrs;                              -- %coreattrs, %i18n, %events --
  %reserved;                           -- reserved for possible future use --
  >
 
 
<!--================== The Anchor Element ================================-->
 
<!ENTITY % Shape "(rect|circle|poly|default)">
<!ENTITY % Coords "CDATA" -- comma-separated list of lengths -->
 
<!ELEMENT A - - (%inline;)* -(A)       -- anchor -->
<!ATTLIST A
  %attrs;                              -- %coreattrs, %i18n, %events --
  charset     %Charset;      #IMPLIED  -- char encoding of linked resource --
  type        %ContentType;  #IMPLIED  -- advisory content type --
  name        CDATA          #IMPLIED  -- named link end --
  href        %URI;          #IMPLIED  -- URI for linked resource --
  hreflang    %LanguageCode; #IMPLIED  -- language code --
  rel         %LinkTypes;    #IMPLIED  -- forward link types --
  rev         %LinkTypes;    #IMPLIED  -- reverse link types --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  shape       %Shape;        rect      -- for use with client-side image maps --
  coords      %Coords;       #IMPLIED  -- for use with client-side image maps --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  >
 
<!--================== Client-side image maps ============================-->
 
<!-- These can be placed in the same document or grouped in a
     separate document although this isn't yet widely supported -->
 
<!ELEMENT MAP - - ((%block;) | AREA)+ -- client-side image map -->
<!ATTLIST MAP
  %attrs;                              -- %coreattrs, %i18n, %events --
  name        CDATA          #REQUIRED -- for reference by usemap --
  >
 
<!ELEMENT AREA - O EMPTY               -- client-side image map area -->
<!ATTLIST AREA
  %attrs;                              -- %coreattrs, %i18n, %events --
  shape       %Shape;        rect      -- controls interpretation of coords --
  coords      %Coords;       #IMPLIED  -- comma-separated list of lengths --
  href        %URI;          #IMPLIED  -- URI for linked resource --
  nohref      (nohref)       #IMPLIED  -- this region has no action --
  alt         %Text;         #REQUIRED -- short description --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  >
 
<!--================== The LINK Element ==================================-->
 
<!--
  Relationship values can be used in principle:
 
   a) for document specific toolbars/menus when used
      with the LINK element in document head e.g.
        start, contents, previous, next, index, end, help
   b) to link to a separate style sheet (rel=stylesheet)
   c) to make a link to a script (rel=script)
   d) by stylesheets to control how collections of
      html nodes are rendered into printed documents
   e) to make a link to a printable version of this document
      e.g. a postscript or pdf version (rel=alternate media=print)
-->
 
<!ELEMENT LINK - O EMPTY               -- a media-independent link -->
<!ATTLIST LINK
  %attrs;                              -- %coreattrs, %i18n, %events --
  charset     %Charset;      #IMPLIED  -- char encoding of linked resource --
  href        %URI;          #IMPLIED  -- URI for linked resource --
  hreflang    %LanguageCode; #IMPLIED  -- language code --
  type        %ContentType;  #IMPLIED  -- advisory content type --
  rel         %LinkTypes;    #IMPLIED  -- forward link types --
  rev         %LinkTypes;    #IMPLIED  -- reverse link types --
  media       %MediaDesc;    #IMPLIED  -- for rendering on these media --
  >
 
<!--=================== Images ===========================================-->
 
<!-- Length defined in strict DTD for cellpadding/cellspacing -->
<!ENTITY % Length "CDATA" -- nn for pixels or nn% for percentage length -->
<!ENTITY % MultiLength "CDATA" -- pixel, percentage, or relative -->
 
<![ %HTML.Frameset; [
<!ENTITY % MultiLengths "CDATA" -- comma-separated list of MultiLength -->
]]>
 
<!ENTITY % Pixels "CDATA" -- integer representing length in pixels -->
 
 
<!-- To avoid problems with text-only UAs as well as 
   to make image content understandable and navigable 
   to users of non-visual UAs, you need to provide
   a description with ALT, and avoid server-side image maps -->
<!ELEMENT IMG - O EMPTY                -- Embedded image -->
<!ATTLIST IMG
  %attrs;                              -- %coreattrs, %i18n, %events --
  src         %URI;          #REQUIRED -- URI of image to embed --
  alt         %Text;         #REQUIRED -- short description --
  longdesc    %URI;          #IMPLIED  -- link to long description
                                          (complements alt) --
  name        CDATA          #IMPLIED  -- name of image for scripting --
  height      %Length;       #IMPLIED  -- override height --
  width       %Length;       #IMPLIED  -- override width --
  usemap      %URI;          #IMPLIED  -- use client-side image map --
  ismap       (ismap)        #IMPLIED  -- use server-side image map --
  >
 
<!-- USEMAP points to a MAP element which may be in this document
  or an external document, although the latter is not widely supported -->
 
<!--==================== OBJECT ======================================-->
<!--
  OBJECT is used to embed objects as part of HTML pages 
  PARAM elements should precede other content. SGML mixed content
  model technicality precludes specifying this formally ...
-->
 
<!ELEMENT OBJECT - - (PARAM | %flow;)*
 -- generic embedded object -->
<!ATTLIST OBJECT
  %attrs;                              -- %coreattrs, %i18n, %events --
  declare     (declare)      #IMPLIED  -- declare but don't instantiate flag --
  classid     %URI;          #IMPLIED  -- identifies an implementation --
  codebase    %URI;          #IMPLIED  -- base URI for classid, data, archive--
  data        %URI;          #IMPLIED  -- reference to object's data --
  type        %ContentType;  #IMPLIED  -- content type for data --
  codetype    %ContentType;  #IMPLIED  -- content type for code --
  archive     CDATA          #IMPLIED  -- space-separated list of URIs --
  standby     %Text;         #IMPLIED  -- message to show while loading --
  height      %Length;       #IMPLIED  -- override height --
  width       %Length;       #IMPLIED  -- override width --
  usemap      %URI;          #IMPLIED  -- use client-side image map --
  name        CDATA          #IMPLIED  -- submit as part of form --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  %reserved;                           -- reserved for possible future use --
  >
 
<!ELEMENT PARAM - O EMPTY              -- named property value -->
<!ATTLIST PARAM
  id          ID             #IMPLIED  -- document-wide unique id --
  name        CDATA          #REQUIRED -- property name --
  value       CDATA          #IMPLIED  -- property value --
  valuetype   (DATA|REF|OBJECT) DATA   -- How to interpret value --
  type        %ContentType;  #IMPLIED  -- content type for value
                                          when valuetype=ref --
  >
 
 
<!--=================== Horizontal Rule ==================================-->
 
<!ELEMENT HR - O EMPTY -- horizontal rule -->
<!ATTLIST HR
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--=================== Paragraphs =======================================-->
 
<!ELEMENT P - O (%inline;)*            -- paragraph -->
<!ATTLIST P
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--=================== Headings =========================================-->
 
<!--
  There are six levels of headings from H1 (the most important)
  to H12 (the least important).
-->
 
<!ELEMENT (%heading;)  - - (%inline;)* -- heading -->
<!ATTLIST (%heading;)
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--=================== Preformatted Text ================================-->
 
<!-- excludes markup for images and changes in font size -->
<!ENTITY % pre.exclusion "IMG|OBJECT|BIG|SMALL|SUB|SUP">
 
<!ELEMENT PRE - - (%inline;)* -(%pre.exclusion;) -- preformatted text -->
<!ATTLIST PRE
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--===================== Inline Quotes ==================================-->
 
<!ELEMENT Q - - (%inline;)*            -- short inline quotation -->
<!ATTLIST Q
  %attrs;                              -- %coreattrs, %i18n, %events --
  cite        %URI;          #IMPLIED  -- URI for source document or msg --
  >
 
<!--=================== Block-like Quotes ================================-->
 
<!ELEMENT BLOCKQUOTE - - (%block;|SCRIPT)+ -- long quotation -->
<!ATTLIST BLOCKQUOTE
  %attrs;                              -- %coreattrs, %i18n, %events --
  cite        %URI;          #IMPLIED  -- URI for source document or msg --
  >
 
<!--=================== Inserted/Deleted Text ============================-->
 
 
<!-- INS/DEL are handled by inclusion on BODY -->
<!ELEMENT (INS|DEL) - - (%flow;)*      -- inserted text, deleted text -->
<!ATTLIST (INS|DEL)
  %attrs;                              -- %coreattrs, %i18n, %events --
  cite        %URI;          #IMPLIED  -- info on reason for change --
  datetime    %Datetime;     #IMPLIED  -- date and time of change --
  >
 
<!--=================== Lists ============================================-->
 
<!-- definition lists - DT for term, DD for its definition -->
 
<!ELEMENT DL - - (DT|DD)+              -- definition list -->
<!ATTLIST DL
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT DT - O (%inline;)*           -- definition term -->
<!ELEMENT DD - O (%flow;)*             -- definition description -->
<!ATTLIST (DT|DD)
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
 
<!ELEMENT OL - - (LI)+                 -- ordered list -->
<!ATTLIST OL
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!-- Unordered Lists (UL) bullet styles -->
<!ELEMENT UL - - (LI)+                 -- unordered list -->
<!ATTLIST UL
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
 
 
<!ELEMENT LI - O (%flow;)*             -- list item -->
<!ATTLIST LI
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--================ Forms ===============================================-->
<!ELEMENT FORM - - (%block;|SCRIPT)+ -(FORM) -- interactive form -->
<!ATTLIST FORM
  %attrs;                              -- %coreattrs, %i18n, %events --
  action      %URI;          #REQUIRED -- server-side form handler --
  method      (GET|POST)     GET       -- HTTP method used to submit the form--
  enctype     %ContentType;  "application/x-www-form-urlencoded"
  accept      %ContentTypes; #IMPLIED  -- list of MIME types for file upload --
  name        CDATA          #IMPLIED  -- name of form for scripting --
  onsubmit    %Script;       #IMPLIED  -- the form was submitted --
  onreset     %Script;       #IMPLIED  -- the form was reset --
  accept-charset %Charsets;  #IMPLIED  -- list of supported charsets --
  >
 
<!-- Each label must not contain more than ONE field -->
<!ELEMENT LABEL - - (%inline;)* -(LABEL) -- form field label text -->
<!ATTLIST LABEL
  %attrs;                              -- %coreattrs, %i18n, %events --
  for         IDREF          #IMPLIED  -- matches field ID value --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  >
 
<!ENTITY % InputType
  "(TEXT | PASSWORD | CHECKBOX |
    RADIO | SUBMIT | RESET |
    FILE | HIDDEN | IMAGE | BUTTON)"
   >
 
<!-- attribute name required for all but submit and reset -->
<!ELEMENT INPUT - O EMPTY              -- form control -->
<!ATTLIST INPUT
  %attrs;                              -- %coreattrs, %i18n, %events --
  type        %InputType;    TEXT      -- what kind of widget is needed --
  name        CDATA          #IMPLIED  -- submit as part of form --
  value       CDATA          #IMPLIED  -- Specify for radio buttons and checkboxes --
  checked     (checked)      #IMPLIED  -- for radio buttons and check boxes --
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  readonly    (readonly)     #IMPLIED  -- for text and passwd --
  size        CDATA          #IMPLIED  -- specific to each type of field --
  maxlength   NUMBER         #IMPLIED  -- max chars for text fields --
  src         %URI;          #IMPLIED  -- for fields with images --
  alt         CDATA          #IMPLIED  -- short description --
  usemap      %URI;          #IMPLIED  -- use client-side image map --
  ismap       (ismap)        #IMPLIED  -- use server-side image map --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  onselect    %Script;       #IMPLIED  -- some text was selected --
  onchange    %Script;       #IMPLIED  -- the element value was changed --
  accept      %ContentTypes; #IMPLIED  -- list of MIME types for file upload --
  %reserved;                           -- reserved for possible future use --
  >
 
<!ELEMENT SELECT - - (OPTGROUP|OPTION)+ -- option selector -->
<!ATTLIST SELECT
  %attrs;                              -- %coreattrs, %i18n, %events --
  name        CDATA          #IMPLIED  -- field name --
  size        NUMBER         #IMPLIED  -- rows visible --
  multiple    (multiple)     #IMPLIED  -- default is single selection --
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  onchange    %Script;       #IMPLIED  -- the element value was changed --
  %reserved;                           -- reserved for possible future use --
  >
 
<!ELEMENT OPTGROUP - - (OPTION)+ -- option group -->
<!ATTLIST OPTGROUP
  %attrs;                              -- %coreattrs, %i18n, %events --
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  label       %Text;         #REQUIRED -- for use in hierarchical menus --
  >
 
<!ELEMENT OPTION - O (#PCDATA)         -- selectable choice -->
<!ATTLIST OPTION
  %attrs;                              -- %coreattrs, %i18n, %events --
  selected    (selected)     #IMPLIED
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  label       %Text;         #IMPLIED  -- for use in hierarchical menus --
  value       CDATA          #IMPLIED  -- defaults to element content --
  >
 
<!ELEMENT TEXTAREA - - (#PCDATA)       -- multi-line text field -->
<!ATTLIST TEXTAREA
  %attrs;                              -- %coreattrs, %i18n, %events --
  name        CDATA          #IMPLIED
  rows        NUMBER         #REQUIRED
  cols        NUMBER         #REQUIRED
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  readonly    (readonly)     #IMPLIED
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  onselect    %Script;       #IMPLIED  -- some text was selected --
  onchange    %Script;       #IMPLIED  -- the element value was changed --
  %reserved;                           -- reserved for possible future use --
  >
 
<!--
  #PCDATA is to solve the mixed content problem,
  per specification only whitespace is allowed there!
 -->
<!ELEMENT FIELDSET - - (#PCDATA,LEGEND,(%flow;)*) -- form control group -->
<!ATTLIST FIELDSET
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!ELEMENT LEGEND - - (%inline;)*       -- fieldset legend -->
 
<!ATTLIST LEGEND
  %attrs;                              -- %coreattrs, %i18n, %events --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  >
 
<!ELEMENT BUTTON - -
     (%flow;)* -(A|%formctrl;|FORM|FIELDSET)
     -- push button -->
<!ATTLIST BUTTON
  %attrs;                              -- %coreattrs, %i18n, %events --
  name        CDATA          #IMPLIED
  value       CDATA          #IMPLIED  -- sent to server when submitted --
  type        (button|submit|reset) submit -- for use as form button --
  disabled    (disabled)     #IMPLIED  -- unavailable in this context --
  tabindex    NUMBER         #IMPLIED  -- position in tabbing order --
  accesskey   %Character;    #IMPLIED  -- accessibility key character --
  onfocus     %Script;       #IMPLIED  -- the element got the focus --
  onblur      %Script;       #IMPLIED  -- the element lost the focus --
  %reserved;                           -- reserved for possible future use --
  >
 
<!--======================= Tables =======================================-->
 
<!-- IETF HTML table standard, see [RFC1942] -->
 
<!--
 The BORDER attribute sets the thickness of the frame around the
 table. The default units are screen pixels.
 
 The FRAME attribute specifies which parts of the frame around
 the table should be rendered. The values are not the same as
 CALS to avoid a name clash with the VALIGN attribute.
 
 The value "border" is included for backwards compatibility with
 <TABLE BORDER> which yields frame=border and border=implied
 For <TABLE BORDER=1> you get border=1 and frame=implied. In this
 case, it is appropriate to treat this as frame=border for backwards
 compatibility with deployed browsers.
-->
<!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
 
<!--
 The RULES attribute defines which rules to draw between cells:
 
 If RULES is absent then assume:
     "none" if BORDER is absent or BORDER=0 otherwise "all"
-->
 
<!ENTITY % TRules "(none | groups | rows | cols | all)">
  
<!-- horizontal placement of table relative to document -->
<!ENTITY % TAlign "(left|center|right)">
 
<!-- horizontal alignment attributes for cell contents -->
<!ENTITY % cellhalign
  "align      (left|center|right|justify|char) #IMPLIED
   char       %Character;    #IMPLIED  -- alignment char, e.g. char=':' --
   charoff    %Length;       #IMPLIED  -- offset for alignment char --"
  >
 
<!-- vertical alignment attributes for cell contents -->
<!ENTITY % cellvalign
  "valign     (top|middle|bottom|baseline) #IMPLIED"
  >
 
<!ELEMENT TABLE - -
     (CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)>
<!ELEMENT CAPTION  - - (%inline;)*     -- table caption -->
<!ELEMENT THEAD    - O (TR)+           -- table header -->
<!ELEMENT TFOOT    - O (TR)+           -- table footer -->
<!ELEMENT TBODY    O O (TR)+           -- table body -->
<!ELEMENT COLGROUP - O (COL)*          -- table column group -->
<!ELEMENT COL      - O EMPTY           -- table column -->
<!ELEMENT TR       - O (TH|TD)+        -- table row -->
<!ELEMENT (TH|TD)  - O (%flow;)*       -- table header cell, table data cell-->
 
<!ATTLIST TABLE                        -- table element --
  %attrs;                              -- %coreattrs, %i18n, %events --
  summary     %Text;         #IMPLIED  -- purpose/structure for speech output--
  width       %Length;       #IMPLIED  -- table width --
  border      %Pixels;       #IMPLIED  -- controls frame width around table --
  frame       %TFrame;       #IMPLIED  -- which parts of frame to render --
  rules       %TRules;       #IMPLIED  -- rulings between rows and cols --
  cellspacing %Length;       #IMPLIED  -- spacing between cells --
  cellpadding %Length;       #IMPLIED  -- spacing within cells --
  %reserved;                           -- reserved for possible future use --
  datapagesize CDATA         #IMPLIED  -- reserved for possible future use --
  >
 
 
<!ATTLIST CAPTION
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--
COLGROUP groups a set of COL elements. It allows you to group
several semantically related columns together.
-->
<!ATTLIST COLGROUP
  %attrs;                              -- %coreattrs, %i18n, %events --
  span        NUMBER         1         -- default number of columns in group --
  width       %MultiLength;  #IMPLIED  -- default width for enclosed COLs --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
<!--
 COL elements define the alignment properties for cells in
 one or more columns.
 
 The WIDTH attribute specifies the width of the columns, e.g.
 
     width=64        width in screen pixels
     width=0.5*      relative width of 0.5
 
 The SPAN attribute causes the attributes of one
 COL element to apply to more than one column.
-->
<!ATTLIST COL                          -- column groups and properties --
  %attrs;                              -- %coreattrs, %i18n, %events --
  span        NUMBER         1         -- COL attributes affect N columns --
  width       %MultiLength;  #IMPLIED  -- column width specification --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
<!--
    Use THEAD to duplicate headers when breaking table
    across page boundaries, or for static headers when
    TBODY sections are rendered in scrolling panel.
 
    Use TFOOT to duplicate footers when breaking table
    across page boundaries, or for static footers when
    TBODY sections are rendered in scrolling panel.
 
    Use multiple TBODY sections when rules are needed
    between groups of table rows.
-->
<!ATTLIST (THEAD|TBODY|TFOOT)          -- table section --
  %attrs;                              -- %coreattrs, %i18n, %events --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
<!ATTLIST TR                           -- table row --
  %attrs;                              -- %coreattrs, %i18n, %events --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
 
<!-- Scope is simpler than headers attribute for common tables -->
<!ENTITY % Scope "(row|col|rowgroup|colgroup)">
 
<!-- TH is for headers, TD for data, but for cells acting as both use TD -->
<!ATTLIST (TH|TD)                      -- header or data cell --
  %attrs;                              -- %coreattrs, %i18n, %events --
  abbr        %Text;         #IMPLIED  -- abbreviation for header cell --
  axis        CDATA          #IMPLIED  -- comma-separated list of related headers--
  headers     IDREFS         #IMPLIED  -- list of id's for header cells --
  scope       %Scope;        #IMPLIED  -- scope covered by header cells --
  rowspan     NUMBER         1         -- number of rows spanned by cell --
  colspan     NUMBER         1         -- number of cols spanned by cell --
  %cellhalign;                         -- horizontal alignment in cells --
  %cellvalign;                         -- vertical alignment in cells --
  >
 
 
<!--================ Document Head =======================================-->
<!-- %head.misc; defined earlier on as "SCRIPT|STYLE|META|LINK|OBJECT" -->
<!ENTITY % head.content "TITLE & BASE?">
 
<!ELEMENT HEAD O O (%head.content;) +(%head.misc;) -- document head -->
<!ATTLIST HEAD
  %i18n;                               -- lang, dir --
  profile     %URI;          #IMPLIED  -- named dictionary of meta info --
  >
 
<!-- The TITLE element is not considered part of the flow of text.
       It should be displayed, for example as the page header or
       window title. Exactly one title is required per document.
    -->
<!ELEMENT TITLE - - (#PCDATA) -(%head.misc;) -- document title -->
<!ATTLIST TITLE %i18n>
 
 
<!ELEMENT BASE - O EMPTY               -- document base URI -->
<!ATTLIST BASE
  href        %URI;          #REQUIRED -- URI that acts as base URI --
  >
 
<!ELEMENT META - O EMPTY               -- generic metainformation -->
<!ATTLIST META
  %i18n;                               -- lang, dir, for use with content --
  http-equiv  NAME           #IMPLIED  -- HTTP response header name  --
  name        NAME           #IMPLIED  -- metainformation name --
  content     CDATA          #REQUIRED -- associated information --
  scheme      CDATA          #IMPLIED  -- select form of content --
  >
 
<!ELEMENT STYLE - - %StyleSheet        -- style info -->
<!ATTLIST STYLE
  %i18n;                               -- lang, dir, for use with title --
  type        %ContentType;  #REQUIRED -- content type of style language --
  media       %MediaDesc;    #IMPLIED  -- designed for use with these media --
  title       %Text;         #IMPLIED  -- advisory title --
  >
 
<!ELEMENT SCRIPT - - %Script;          -- script statements -->
<!ATTLIST SCRIPT
  charset     %Charset;      #IMPLIED  -- char encoding of linked resource --
  type        %ContentType;  #REQUIRED -- content type of script language --
  src         %URI;          #IMPLIED  -- URI for an external script --
  defer       (defer)        #IMPLIED  -- UA may defer execution of script --
  event       CDATA          #IMPLIED  -- reserved for possible future use --
  for         %URI;          #IMPLIED  -- reserved for possible future use --
  >
 
<!ELEMENT NOSCRIPT - - (%block;)+
  -- alternate content container for non script-based rendering -->
<!ATTLIST NOSCRIPT
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
 
<!--================ Document Structure ==================================-->
<!ENTITY % html.content "HEAD, BODY">
 
<!ELEMENT HTML O O (%html.content;)    -- document root element -->
<!ATTLIST HTML
  %i18n;                               -- lang, dir --
  >
?
0
 Аватар для Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
02.06.2012, 19:22
Цитата Сообщение от taras atavin Посмотреть сообщение
Сервер - машина, ни какой структуры он всё равно не поймёт.
причем тут сервер? сервер лишь отдает html, чтение html и его правильная интерпретация - обязанность клиента или ПС.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.06.2012, 20:11  [ТС]
Кто такой ПС? Покрашенный сеньёр? Или поисковый сервер?
0
 Аватар для Dimazzzzzz
589 / 96 / 6
Регистрация: 24.01.2009
Сообщений: 379
02.06.2012, 21:07
Цитата Сообщение от taras atavin Посмотреть сообщение
Да и какое вообще дело поисковикам до структуры? Она нужна человеку, а боту не проблема просмотреть всё.
Позвольте заметить, что именно теги определяют структуру страницы для программы, которой является браузер или поисковик. Можно сделать страницу, используя лишь тег А, где-то разрешая ссылку, где-то запрещая, прикрутить различное оформление к разным кускам текста.

Пользователь даже не заметит разницы, т.к. страница будет выглядеть красиво и работоспособно - что собсна ему и нужно. А вот для программы информативность такой структуры страницы будет нулевая, т.к. для нее (программы) весь текст будет являться одним и тем же тегом А.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.06.2012, 22:29  [ТС]
Откуда браузер вообще знает, что такое заголовок? Он знает, как должно выглядеть и реагировать то, что обрамлено в тег. Но ему нельзя втолковать, что текст на русском, а не на html, между тегами <h1> и </h1> кратко описывает семантику текста после тега </h1> и до следующего тега <h1>, а это то и означает слово "заголовок". Читать по-русски он просто не умеет и как можно в одну фразу описать тематику целой страницы не понимает. Есть лишь два случая, когда программы начинают понимать, что такое заголовок: при переводе текста с самим словом "заголовок" и когда им приказано что то сделать только с заголовками, например, найти определённую строчку только в заголовках, или составить оглавление, надёргав в него только заголовки. Если же страница отображается, или как то иначе обрабатывается целиком, но не переводится, или переводится, но данного слова не содержит, то машины с программами напрочь перестают понимать само слово "заголовок". А вот для пользователя важно даже взаиморазмещение на экране текста с разным оформлением.
0
 Аватар для Dimazzzzzz
589 / 96 / 6
Регистрация: 24.01.2009
Сообщений: 379
02.06.2012, 23:03
Цитата Сообщение от taras atavin Посмотреть сообщение
Откуда браузер вообще знает, что такое заголовок?
Браузеру это объяснили его создатели. Т.е. если взять код С++ и подсунуть его веб-браузеру, то он грязно выругается и просто выведет этот текст на экран. А для того, чтобы браузер увидел смысл в этом тексте, нужно оформить его по тем правилам, которые браузер ожидает увидеть.

Если заключить кусок текста в тег H1, браузер будет считать это заголовком первого уровня, даже если размер букв здесь будет самым маленьким на странице. А если придумать тег H12, то для браузера это будет просто текст, как DIV, SPAN .... потому, что программа не способна увидеть смысл там, где ей не сказали его искать.

Можно сделать какие угодно самодельные теги, которые помогут веб-мастеру лучше воспринимать код и проще сортировать его структуру в своей голове, только все эти теги будут всего лишь текстом для программ, которые не найдут там то, что в них заложено программистом.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.06.2012, 23:12  [ТС]
Откуда браузер вообще знает, что такое заголовок? Он знает, как должно выглядеть и реагировать то, что обрамлено в тег. Но ему нельзя втолковать, что текст на русском, а не на html, между тегами <h1> и </h1> кратко описывает семантику текста после тега </h1> и до следующего тега <h1>, а это то и означает слово "заголовок". Читать по-русски он просто не умеет и как можно в одну фразу описать тематику целой страницы не понимает. Есть лишь два случая, когда программы начинают понимать, что такое заголовок: при переводе текста с самим словом "заголовок" и когда им приказано что то сделать только с заголовками, например, найти определённую строчку только в заголовках, или составить оглавление, надёргав в него только заголовки. Если же страница отображается, или как то иначе обрабатывается целиком, но не переводится, или переводится, но данного слова не содержит, то машины с программами напрочь перестают понимать само слово "заголовок". А вот для пользователя важно даже взаиморазмещение на экране текста с разным оформлением. Что такое таблицы, рисунки, заголовки и подзаголовки и какой куда относится, понимает именно пользователь. И нечего полагаться на то, что пользователь не видит кода станицы, правую кею крысы ни кто не отменял. Может ему надо кусок со страницы дёрнуть в свою страницу с сохранением оформления и поведения? Может он за образец попытается взять фрагмент кода страницы? И как он твою вёрстку одними ссылками разбирать будет? Поэтому я аккуратно расставляю даже переносы строки. Я забочусь о читабельности кода страницы для человека. Человек же как раз способен догадаться, что если все заголовки на букву h с номерами, то h в теге сама по себе означает "заголовок", а номер отражает подчинение заголовков и вдруг попался <h7>, то он сделает вывод, что это заголовок, подчинённый <h6>. А если где то <h1>, <h2>, <h3>, <h4>, а в остальных местах <p> с разным оформлением, то он не поймёт, что этот <p> означает и будет как тот програмер в лифте долго искать тег на h.

Добавлено через 5 минут
Цитата Сообщение от Dimazzzzzz Посмотреть сообщение
Браузеру это объяснили его создатели.
И тест Тьюринга браузеры прошли? Могут сами страницы сочинять? Осознано говорить от своего имени научились? Так что это не возможно, без подлинного интеллекта того, кому объясняешь за такое объяснение не возможно браться. Когда надо отобрать только заголовки - другое дело, при рутинном составлении оглавления и поиске слова в оглавлении программы не отстают в понятливости от нас. Но подлинное понимание текста на естественном языке им не доступно, а без этого нет и понимания структуры. Можно выделить элементы, но элементы - не структура.

Добавлено через 50 секунд
Цитата Сообщение от Dimazzzzzz Посмотреть сообщение
потому, что программа не способна увидеть смысл там, где ей не сказали его искать.
она не способна его увидеть в любом случае.

Добавлено через 2 минуты
Цитата Сообщение от Dimazzzzzz Посмотреть сообщение
которые не найдут там то, что в них заложено программистом.
то, что они способны найти, они найдут даже в том случае, если там вообще не будет ни одного тега, кроме
HTML5
1
<html><body></body></html>
, а чего не способны, не помогут и теги.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.06.2012, 23:12
Помогаю со студенческими работами здесь

Сдвиг младших битов числа
Привет народ, уже несколько часов борюсь с проблемой, нужно сдвинуть &quot;0&quot; только в младших 4 битах, не могу никак получить нужный результат....

Задача на c++. Количество нулей в младших разрядах
Здраствуйте срочно нужно решение на c++. Задача: Дано натуральное число N (N&gt;9). Определить количество нулей, идущих подряд в младших...

Существует ли программный USB на младших моделях STM32F100?
Поймал себя на мысли, что очень часто используется очень мало возможностей контроллера. Если с программным USB справляется даже tiny2313...

Вычислить сумму k младших (правых) цифр числа
у меня прост инета нет пока, а препод требует сделать до среды дз. Помогите решить,решается моя аттестация!!!! 1)Дано натуральное...

Обнулить 3 младших разряда каждого элемент а в массиве
Массив состоит из 50 элементов размером в байт. Обнулить 3 младших разряда каждого элемент а в массиве.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru