Доктайп-шапка над HTML кодом рушит структуру сайта

Г

Геннадий2

#1
Делаю в дримвивере сайт на РНР. Работаю в Googlhrom-ме. Все нормально пока не проверил сайт в других браузерах. Оказалось что в Опере, Эксплорере и Фаерфоксе разьезжается табличный дизайн. Обнаруживаю что если убрать шапку над HTML кодом (<!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">), то таблица становится на место. Данная надпись автоматом пишется когда создаешь новую страницу. Что делать? Убрать этот код со всех страниц? Будет ли сайт правильно отображаться на сетевом сервере? Я сейчас работаю на локальном. Конкретно, на Денвере. И для чего вообще нужна указанная надпись? ПОЧЕМУ такая проблема возникла, и как ее устранить?!!
 
Z

Zapal1

#2
(<!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">)
Разве круглые скобки нужны? не?
 
Г

Геннадий2

#3
Причем тут скобки... Это я в сообщении их поставил (пример в контексте). Перелопатил кучу форумов, на трех задал один и тот же вопрос, и никакого результата. Либо случай очень уж специфичный, либо сказывается все таки что знания и опыт, основная масса уважаемых вебмастеров, так же как и я приобретала урывками из разрозненных источников, а стало быть, в этом деле настоящих профессионалов не так уж и много.:sorry:
 
Z

Zapal1

#4
По идее этого быть не должно, так как код то начинается с <html>, а то это код для валидации браузеров.
 
B

Boss3

#5
Насчет верстки и кодинга не подскажу. Но из-за этой строки не может меняться отображение таблицы.
 
W

Wmboard

#6
Геннадий, эта строчка не может влиять на кроссбраузерность. Вероятно у вас есть косяк в коде... Обратите внимание, например на исходный код форума:

Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="ru">
<head>

Эта строчка стоит в самом верху, до тэга <head>, то есть до начала самого первого открывающего верстку кода.
 
Г

Геннадий2

#7
Ребята, я и сам все это знаю. Но факт есть факт! В одном броузере все окей, а в остальных караул...Выложу несколько скриншотов, может это поможет.
1)Страница с DOCTYPE
2)Страница без DOCTYPE
3)Верхняя часть кода этой страницы с DOCTYPE...
Что скажете, видна моя ошибка, или дело в чем то другом?
Сразу скажу что, размещение строчки с DOCTYPE выше РНР кода ничего не меняет.
 
Н

Никита Рябин

#8
Насчет верстки и кодинга не подскажу. Но из-за этой строки не может меняться отображение таблицы.

Полностью согласен, совершенно код не должен меняться. Это атрибут вобще прописывает в каком формате написана страница.
 
B

Boss3

#9
Геннадий, выложи исходный код не картинкой скажу че попробовать. Чего это у тебя php инклуд стоит выше открывающего тэга html и head?
 
Н

Ночная странница

#10
Обнаруживаю что если убрать шапку над HTML кодом (<!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"> то таблица становится на место.

Это говорит о том, что современные браузеры не такие уж и тупые :D
DOCTYPE предназначен для того, чтобы браузеры знали, по каким правилам отображать страницу. Без него страницы отображаться будут, но так, как захочется БРАУЗЕРУ, а не вам.

Мне непонятно одно - какой DOCTYPE у вас все-таки стоит?
Сначала вы пишете, что loose.dtd (переходный. один из самых демократичных и щадящих), а на скрине вижу strict.dtd (самый строгий и требовательный к правильности кода)?

Подробно про них тут
 
Get involved!

Here you can only see a limited number of comments. On СЕО Форум Вебмастеров you see all comments and all functions are available to you. To the thread