Вы не можете самостоятельно закрыть тег скрипта. Вы должны использовать </script>
.
Если вы используете />
, следующий текст будет интерпретироваться как источник сценария до следующего вхождения </script>
. Вот почему ваш второй скрипт не работает.
Спецификация HTML обозначает требуемые конечные теги элемента скрипта. Это связано с тем, что правила экранирования символов HTML не действуют для содержимого скрипта (то есть вы можете использовать иные зарезервированные символы, такие как <
или &
, не кодируя их как <
или &
). В результате требуется фиксированный маркер «конечного содержимого», который просто равен </script>
.