почему я использую php echo, почему элементы тегов закрываются автоматически? - PullRequest
0 голосов
/ 31 мая 2018

Я пытался сделать этот код, как показано ниже.

PHP-код, который я написал:

$i = 1;
<div class="sampleNumberIndex">
  <p> 
    <h2> <?php echo $i; ?></h2> 
  </p> 
</div>

Сделал код, который я ожидал

<div class="sampleNumberIndex"> 
  <p> 
    <h2> 1 </h2> 
  </p> 
</div>

Но php-код сделал это.

<div class="sampleNumberIndex"> 
  <p> </p>
    <h2> 1 </h2> 
  <p> </p>
</div>

Я использую хром, с чем это связано?

Ответы [ 3 ]

0 голосов
/ 31 мая 2018

Возможно, вы просматриваете раздел Inspect Element, в котором исправлены некорректные HTML-коды.Реальные исходные коды доступны в разделе View page source.Попробуйте Ctrl + U для просмотра исходного кода.

0 голосов
/ 31 мая 2018

Это не очень ясно из вашего вопроса, но я полагаю, вы видите неожиданные теги в инспекторе DOM браузера.«Показать исходный код страницы» должен отображать фактический необработанный HTML-код, полученный вашим браузером.

Редактировать: то, что сказал @ AliN11

HTML выводит теги при отсутствии в содержимом.В вашем случае браузер HTML знает, что h2 не может отображаться в содержимом элемента p, поэтому он добавляет тег </p> end-element перед h2.Затем после элемента h2 он встречает тег конечного элемента </p> и вставляет тег начального элемента <p> перед ним, поскольку ни один из них не открыт в позиции контекста.

Первая вставка- что для тега </p> end-element - является частью обычных правил синтаксического анализа для HTML;пропуск </p> допускается согласно спецификации HTML .Но вторая вставка - для тега <p> start-element - отсутствует и является следствием запуска восстановления (восстановления) HTML.

Я подробно объяснил вставку тегов HTML / SGMLна странице проекта моего программного обеспечения SGML и связанных с ним слайдов доклада, о котором я говорил в прошлом году.

0 голосов
/ 31 мая 2018

Это не имеет ничего общего с PHP.Просто html не хочет, чтобы вы помещали h2-теги в p-теги.Вам лучше использовать div, независимо от того, чего вы здесь пытаетесь достичь.

...