странная проблема с html: разметка верна, но инструменты разработчика показывают, что <title>движется к <body> - PullRequest
1 голос
/ 30 октября 2011

У меня происходит эта странная проблема.Я использую Codeigniter 3.0-dev и Smarty 3.1.4 в бэкэнде, но я не думаю, что это уместно.

У меня есть этот действительно простой html:

<!DOCTYPE HTML>
<html>
<head>
    <title>some page</title>
</head>
<body>
asd
</body>
</html>

сейчас.Когда я просматриваю источник этой страницы, в любом браузере (пробовал Opera 10.52, Firefox 7.0.1, Chrome 14 и 15, IE9) разметка выглядит точно так же, как и выше.теперь, когда я использую инструменты разработчика Firebug или Chrome, он перемещает тег заголовка в <body>, а если у меня есть мета или что-то еще в <head>, он также перемещает эти элементы в <body>.firebug firefox показывает мне это:

<html>
<head></head>
<body>

<title>test</title>
asd
</body>
</html>

почему это происходит?есть идеи?

Ответы [ 2 ]

6 голосов
/ 30 октября 2011

Элементы, которые отображаются в head в разметке, могут оказаться внутри body в DOM, если синтаксический анализатор видит что-то перед перемещенными элементами, что допустимо только в теле HTML.Например, double BOM (byte-order-mark) в начале файла может не отображаться в View Source, но заставит анализатор думать, что он вошел в раздел html body,и все элементы head в разметке окажутся в body в DOM.

0 голосов
/ 30 октября 2011

То, что сказал Алохчи, плюс Firebug и Chrome отладчик часто перемещают вещи, чтобы удовлетворить себя. Источник в этом случае выглядит неправильно при просмотре в этих отладчиках.

...